Vaadin: не удалось загрузить widgetset.nocache.Яш
Я использую Vaadin 6.8.2 и Maven для разработки приложения.
Я попытался добавить надстройку календаря (1.3.0-версия для Vaadin 6) в свой проект, выполнив шаг за шагом учебник по этой ссылке:https://vaadin.com/book/vaadin6/-/page/addons.maven.html
однако, когда я пытаюсь загрузить свое приложение в браузере, я получаю следующую ошибку:
Failed to load the widgetset: /myproject/VAADIN/widgetsets/my.company.ProjectWidgetSet/my.company.ProjectWidgetSet.nocache.js
Если я посмотрю в консоли, я вижу это:
INFO: Requested resource [VAADIN/widgetsets/my.company.ProjectWidgetSet/my.company.ProjectWidgetSet.nocache.js] not found from filesystem or through class loader. Add widgetset and/or theme JAR to your classpath or add files to WebContent/VAADIN folder.
вы сталкивались с подобными проблемами? Помогите, пожалуйста. :)
3 ответов
вам нужно скомпилировать widgetset. Чтобы включить его, вам нужно что-то вроде этого в вашем pom:
<!-- vaadin update widgetset step 1: need (re)build? -->
<plugin>
<groupId>com.vaadin</groupId>
<artifactId>vaadin-maven-plugin</artifactId>
<version>1.0.2</version>
<executions>
<execution>
<goals>
<goal>update-widgetset</goal>
</goals>
</execution>
</executions>
</plugin>
<!-- vaadin update widgetset part 2: compile -->
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>gwt-maven-plugin</artifactId>
<version>2.3.0-1</version>
<configuration>
<webappDirectory>src/main/webapp/VAADIN/widgetsets</webappDirectory>
<extraJvmArgs>-Xmx512M -Xss1024k</extraJvmArgs>
<runTarget>clean</runTarget>
<hostedWebapp>${project.build.directory}/${project.build.finalName}</hostedWebapp>
<noServer>true</noServer>
<port>8080</port>
<soyc>false</soyc>
</configuration>
<executions>
<execution>
<goals>
<goal>resources</goal>
<goal>compile</goal>
</goals>
</execution>
</executions>
</plugin>
когда на месте, перекомпилируйте приложение. Вы должны увидеть нечто похожее на то, что описано в главе 15.5.3 по ссылке, которую вы предоставили. Компиляция widgetset занимает некоторое время, поэтому она не может остаться незамеченной.
Вам также нужен ProjectWidgetSet.ГВт.xml и ссылка на него в интернете.XML, но, поскольку сообщение об ошибке вы получаете уже упоминает ProjectWidgetSet (в отличие от DefaultWidgetset), я предполагаю, что вы уже сделали это.
У меня была та же проблема "не удалось загрузить widgetset:" и она возникла, когда я попытался запустить демонстрационное приложение Vernotologist, извлекая из svn. Чтобы решить эту проблему:
- Goto ваш gwt.xml-файл и убедитесь, что он выбран в обозревателе проектов в eclipse
- убедитесь, что ваш Vaadin в Eclipse плагин установлен
- найдите кнопку Compile Widgetset на панели инструментов Eclipse, которая входит в состав плагина vaadin и выглядит как шестерня. Щелчок это
- Шаг 3 скомпилирует набор виджетов для вас
- перезагрузите сервер и повторно запустите приложение
источник: 16.2.2. Компиляция набора виджетов из книги фреймворк Vaadin по этой ссылке: https://vaadin.com/book/-/page/gwt.eclipse.html
Это старый поток, но в более поздних версиях Vaadin (7.х.х) решение-это совсем другое. Не требуется плагин GWT:
<plugin>
<groupId>com.vaadin</groupId>
<artifactId>vaadin-maven-plugin</artifactId>
<configuration>
<extraJvmArgs>-Xmx512M -Xss1024k</extraJvmArgs>
<webappDirectory>${basedir}/src/main/webapp/VAADIN/widgetsets</webappDirectory>
<hostedWebapp>${basedir}/src/main/webapp/VAADIN/widgetsets</hostedWebapp>
<noServer>true</noServer>
<draftCompile>false</draftCompile>
<style>OBF</style>
<compileReport>true</compileReport>
<runTarget>http://localhost:8080/</runTarget>
<widgetsetMode>cdn</widgetsetMode>
</configuration>
<executions>
<execution>
<goals>
<goal>compile-theme</goal>
<goal>update-widgetset</goal>
<goal>compile</goal>
</goals>
</execution>
</executions>
</plugin>
кроме того, убедитесь, что ваш ProjectWidgetSet.ГВт.xml находится внутри ресурсы/Мой/компании/