Я добавляю Vaadin в существующее приложение Spring. Я добавил пользовательский интерфейс, сетку и пару других компонентов.Когда я подключаюсь к своему приложению Vaadin из 2 вкладок, я получаю: «Ошибка. Этот экземпляр пользовательского интерфейса уже инициализирован»
Я заметил, что когда я загружаю первый раз, когда он работает нормально, но если подключить другую страницу браузера или перезагрузки, чем я получаю сообщение об ошибке:
«ошибка»: «Внутренняя ошибка сервера», «исключение»: «com.vaadin.server.ServiceException», «message»: «java.lang.IllegalStateException: этот экземпляр пользовательского интерфейса уже инициализирован (как идентификатор интерфейса пользователя 0) и поэтому не может быть снова инициализирован (в качестве идентификатора интерфейса 2). вы случайно не используете старый экземпляр UI ».
Я не был уверен, как зарегистрировать свой пользовательский интерфейс весной, так что я создал @Bean метода в файле конфигурации Spring Java моего приложения:
@Bean
MainUI ui() {
MainUI ui = new MainUI (mainController());
return ui;
}
Я подозреваю, что проблема в том, что существует один экземпляр этого компонента? не могли бы вы объяснить, как это можно исправить?
В примерах, вы предоставляете ссылки на, это, кажется, полагаться на ComponentScan аннотацию или что-то подобное , Я не могу это использовать. Есть ли более явный способ указать Spring, что это класс @SpringUI? – Charbel