Добрый день!
Столкнулся с похожей проблемой, описанной здесь:
Установил аддон Maps через MarketPlace (платная версия). Студия сама создала модуль webToolkit и вроде как прописала везде все что нужно. Версия платформы 7.1.2, но и в build.gradle вроде записана соответствующая версия аддона (судя по документации здесь):
appComponent(‘com.haulmont.addon.maps:maps-global:1.1.0’)
При запуске приложения в браузере сообщение:
В логах было сказано что:
В чем может быть дело?
Добрый день!
Попробуйте, пожалуйста, выполнить операции clean
и undeploy
(можно через меню студии: CUBA -> Build Tasks), затем заново собрать проект и запустить приложение.
Здравствуйте!
Выполнил по очереди задачи clean-undeploy-assemble-deploy. Результат тот же.
@michaelkruglov17, если модуль web-toolkit настроен правильно, то такой проблемы быть не должно. Возможно, у вас нестандартный build.gradle, и студия что-то упустила при автоматическом добавлении модуля.
Первым делом, проверьте, что в модуле web-toolkit в файле *.gwt.xml
указан виджетсет аддона Maps:
<inherits name="com.haulmont.addon.maps.web.toolkit.ui.MapsWidgetSet" />
При сборке должна запускаться задача buildWidgetSet
, а после сборки в папке web-toolkit/build/web/VAADIN/widgetsets
должен быть скомпилированный виджетсет. Выглядит он примерно так:
Убедитесь, что эти файлы попали в артефакт при деплое: deploy/tomcat/webapps/app/WEB-INF/lib/app-web-toolkit*.jar
.
Попробуйте создать проект с нуля, добавить аддон и сравнить build.gradle двух проектов.
Для дальнейшего выяснения причин, нам будет нужен ваш build.gradle файл или, если возможно, демо-проект, где воспроизводится данная проблема.
С уважением,
Глеб
Еще раз здравствуйте!
Вернулся к данной проблеме. Я проследил: виджетсет указан, задача выполняется (правда довольно долго, около минуты), все файлы везде есть и после деплоя в jar-файле также все имеется точь в точь как на Вашем скриншоте, разве что один файл с множеством символов называется по другому, не знаю насколько это важно.
Я создал тестовый пустой проект, там все работает корректно. Не знаю, как воспроизвести проблему на нем, поэтому скидываю Вам наш build.gradle:[buildGradle.txt|attachment]
Добрый день!
К сожалению, по Вашему build.gradle скрипту не удалось выяснить причину проблемы. К тому же, по всей видимости, это версия скрипта до добавления модуля web-toolkit. А проблема с немалой вероятностью могла произойти из-за некорректного добавления модуля web-toolkit студией.
Можете, пожалуйста, на основе Вашего проекта создать демо-проект, минимально работающий, но где воспроизводится данная проблема (разумеется, предварительно удалив всю секретную информацию, пароли и т.д.)?
С уважением,
Глеб
Сталкивался с подобными проблемами.
Попробуйте к clean
и undeploy
добавить еще dropTomcat
.
Ну и проверьте, что все точно удалилось… Если необходимо, то дочистить руками.
Что то не могу найти задание dropTomcat. Вручную удалять папку tomcat уже также пробовал.
Странно. Это градл-таска, такая же как и другие.
А конфигурационный каталог? Он, с некоторых пор, вне папки томкат.
Как последний вариант. Я бы попробовал запустить на другой машине…
Ещё несколько предположений по поводу Вашей проблемы.
-
Убедитесь, что после добавления аддона Maps были изменены файлы:
./modules/core/web/WEB-INF/web.xml
./modules/web/web/WEB-INF/web.xml
./modules/web/web/WEB-INF/single-war-web.xml
и соответствующая запись (com.haulmont.addon.maps
) была добавлена в appComponents. -
Попробуйте еще раз удалить tomcat, выполнить clean, deploy. После этого откройте папку deploy/tomcat/webapps/app/VAADIN и проверьте, что в ней нет папки widgetsets.
-
На всякий случай попробуйте открыть приложение в другом браузере или во вкладке “инкогнито”.
@shalyganov,
Спасибо за вашу помощь!
Я решил еще раз плотно засесть за проверкой всех свойств и тд. И я обнаружил, что в моем файле
web-app.properties не было прописано свойство
cuba.web.widgetSet=com.company.enerstroymain.web.toolkit.ui.AppWidgetSet.
Вернее было, но в другом) Каким то образом, у нас в проекте существуют два каталога web-конфигурационных файлов (web-screeens, web-menu и тд). Один по “рабочему” пути:
\modules\web\src\com\company\app
А другой по пути:
\modules\web\bin\com\company\app
Так вот при установке аддона свойство прописалось как раз во втором каталоге.
Не могли бы вы объяснить, какой путь правильный (очевидно, что с подкаталогом src), можно ли удалить второй каталог-паразит, если судя по всему как раз в него прописываются автоматически какие то параметры?
Правильный путь \modules\web\src. Студия не создает папку bin. Возможно вы сами каким-то образом ее случайно создали. В вашем build.gradle она также не фигурирует, так что ее можно удалить.