/ / Vaadin: IllegalStateException "L'identifiant de l'interface utilisateur a déjà été défini" après expiration du délai de session "- java, vaadin

Vaadin: IllegalStateException "L'identifiant de l'interface utilisateur a déjà été défini" après expiration du délai de session "- java, vaadin

Mon application Vaadin lève l'exception suivante après le délai de session et la tentative d'actualisation de la page.

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)...

J'apprécierais vos idées sur ce que cela signifie et pourquoi cela se produit.

Réponses:

0 pour la réponse № 1

Dans mon cas, la raison de cette exception était ce Spring plugin d'intégration. Je suppose qu'il s'agissait de gérer des instances d'interface utilisateur en tant que singletones. Nous avons décidé d'utiliser la création manuelle du contexte Spring. Cela a résolu le problème.


0 pour la réponse № 2

Ce code supprime le problème pour moi

@PreserveOnRefresh
public class MyVaadinUI extends UI {
...