我的Vaadin应用程序在会话超时和页面刷新尝试后抛出异常。
java.lang.IllegalStateException: UI id has already been defined
at com.vaadin.ui.UI.doInit(UI.java:519)
at com.vaadin.server.AbstractCommunicationManager.getBrowserDetailsUI(AbstractCommunicationManager.java:2468)
at com.vaadin.server.AbstractCommunicationManager.handleBrowserDetailsRequest(AbstractCommunicationManager.java:2362)
at com.vaadin.server.VaadinServlet.service(VaadinServlet.java:325)
at com.vaadin.server.VaadinServlet.service(VaadinServlet.java:201)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:728)...
我很感激任何关于这意味着什么以及为什么会发生的想法。
答案 0 :(得分:0)
此代码为我删除了问题
@PreserveOnRefresh
public class MyVaadinUI extends UI {
...
答案 1 :(得分:0)
在我的情况下,该异常的原因是this Spring集成插件。我猜它是以单例形式管理UI实例。我们决定使用手动Spring上下文创建。这解决了这个问题。