Проблема проявилась после миграции проекта с 6.10.9 на 7.0.3 и сохранятся на 7.0.8.
При открытии некоторых экранов по внешней ссылке, верстка экрана рассыпается, а UI зависает. При этом на экране пользователь видит такую жуть.
От браузера картина особо не меняется.
В catalina.out тишина.
А в консоли браузера обнаружили такое сообщение:
Wed Jul 10 16:44:54 GMT+700 2019 com.vaadin.client.communication.MessageHandler
SEVERE: Error handling type data
com.google.gwt.core.client.JavaScriptException: (TypeError) : d.fileupload is not a function
Сведения
at Unknown.Sdd(com.haulmont.cuba.web.widgets.WidgetSet-0.js)
at Unknown.new ned(com.haulmont.cuba.web.widgets.WidgetSet-0.js)
at Unknown.new Edd(com.haulmont.cuba.web.widgets.WidgetSet-0.js)
at Unknown.WMe(com.haulmont.cuba.web.widgets.WidgetSet-0.js)
at Unknown.J$e(com.haulmont.cuba.web.widgets.WidgetSet-0.js)
at Unknown.A6b(com.haulmont.cuba.web.widgets.WidgetSet-0.js)
at Unknown.ccd(com.haulmont.cuba.web.widgets.WidgetSet-0.js)
at Unknown.P5b(com.haulmont.cuba.web.widgets.WidgetSet-0.js)
at Unknown.b6b(com.haulmont.cuba.web.widgets.WidgetSet-0.js)
at Unknown.WJd(com.haulmont.cuba.web.widgets.WidgetSet-0.js)
at Unknown.ZWd(com.haulmont.cuba.web.widgets.WidgetSet-0.js)
at Unknown.aXd(com.haulmont.cuba.web.widgets.WidgetSet-0.js)
at Unknown.pXd(com.haulmont.cuba.web.widgets.WidgetSet-0.js)
at Unknown.vJd(com.haulmont.cuba.web.widgets.WidgetSet-0.js)
at Unknown.FSd(com.haulmont.cuba.web.widgets.WidgetSet-0.js)
at Unknown.bee(com.haulmont.cuba.web.widgets.WidgetSet-0.js)
at Unknown.wRe(com.haulmont.cuba.web.widgets.WidgetSet-25.js)
at Unknown.Uh(com.haulmont.cuba.web.widgets.WidgetSet-0.js)
at Unknown.Zh(com.haulmont.cuba.web.widgets.WidgetSet-0.js)
at Unknown.ui(com.haulmont.cuba.web.widgets.WidgetSet-0.js)
at Unknown.xi(com.haulmont.cuba.web.widgets.WidgetSet-0.js)
at Unknown.eval(com.haulmont.cuba.web.widgets.WidgetSet-0.js)
at Unknown.anonymous(com.haulmont.cuba.web.widgets.WidgetSet-25.js)
at Unknown.com_haulmont_cuba_web_widgets_WidgetSet.__installRunAsyncCode(http://localhost:8080/vedoc/VAADIN/widgetsets/com.haulmont.cuba.web.widgets.WidgetSet/com.haulmont.cuba.web.widgets.WidgetSet.nocache.js?1562751893472)
at Unknown.__gwtInstallCode(com.haulmont.cuba.web.widgets.WidgetSet-0.js)
at Unknown.Ki(com.haulmont.cuba.web.widgets.WidgetSet-0.js)
at Unknown.gj(com.haulmont.cuba.web.widgets.WidgetSet-0.js)
at Unknown.eval(com.haulmont.cuba.web.widgets.WidgetSet-0.js)
at Unknown.ui(com.haulmont.cuba.web.widgets.WidgetSet-0.js)
at Unknown.xi(com.haulmont.cuba.web.widgets.WidgetSet-0.js)
at Unknown.eval(com.haulmont.cuba.web.widgets.WidgetSet-0.js)
at Unknown.anonymous(http://localhost:8080/vedoc/VAADIN/widgetsets/com.haulmont.cuba.web.widgets.WidgetSet/deferredjs/69A03E66BB1C98173BAB6ED25803FF09/25.cache.js)
Если открывать этот экран без использования внешней ссылки - он работает без проблем.
Пару таких проблемных экранов отличает от других то, что у проблемных компонент multiUpload
используется на основной вкладке tabSheet
.
Схожие экраны, где multiUpload
расположен на вторичных вкладках tabSheet
- исправно открываются по внешней ссылке.
Если на проблемных экранах работу с файлами и компонент multiUpload
перенести из первой, открываемой по-умолчанию, вкладки tabSheet
на вкладки глубже - проблема исчезает.
Простое добавление одного только multiUpload
на основную вкладку - приводит к описанному выше коллапсу.
К сожалению, на на тестовом примере, изначально созданном на 7.0.7, воспроизвести пока не получилось.
Есть идеи на тему того, где искать корень зла?
Можно, конечно, пока обойти выносом работы с файлами на вторичные вкладки, но на этих двух экранах удобнее иметь файлы сразу на основной вкладке.