2013-09-05 11 views
5

Utilizzo Vaadin 7.1.2 e faccio molto affidamento sul suo supporto di notifica push. Tutto funziona bene per un po 'di tempo dopo l'avvio dell'applicazione, ma dopo circa 30-40 minuti improvvisamente smette di inviare aggiornamenti dal server e registra invece com.vaadin.ui.UIDetachedException per ogni evento di aggiornamento. Il riavvio aiuta ma per molto tempo.L'interfaccia utente Vaadin si scollega dopo un po 'di tempo

Tutti i parametri di configurazione sono predefiniti tranne che ho dovuto aggiungere le opzioni di comando -Djava.net.preferIPv4Stack=true -Djava.net.preferIPv4Addresses=true per push to work.

Distribuisco a Tomcat 7.0.36 e tutto è impostato come predefinito anche nella sua configurazione.

Per aggiornare UI semplicemente chiamo

ui.access(new Runnable{...}); 

nell'istanza UI cui passo fino a ogni componente dal metodo UI.init().

Mi manca qualcosa?

risposta

1

Accade quando l'applicazione è inattiva (ad esempio non fai nulla nell'app) o non importa se l'utente è attivo? Potrebbe essere che la sessione utente venga invalidata da Tomcat dopo mezz'ora di inattività dal lato client, ed è per questo che l'interfaccia utente è scollegata. In caso contrario, ti consigliamo di effettuare l'upgrade all'ultima versione di Vaadin, che al momento è 7.1.8. Un sacco di problemi con la spinta sono stati risolti recentemente.

+1

No, è stata colpa mia: non ho rilasciato correttamente le risorse, quindi alcuni eventi del modello venivano inviati all'interfaccia utente distaccata che ha provocato UIDetachedException e impedito a tali eventi di raggiungere le nuove istanze dell'interfaccia utente. – Kovalsky