Vaadin UI 在一段时间后分离



我正在使用Vaadin 7.1.2,并严重依赖其推送通知支持。应用程序启动后的一段时间内一切正常,但大约 30-40 分钟后,它突然停止从服务器推送更新,而是记录com.vaadin.ui.UIDetachedException每个更新事件。重新启动会有所帮助,但持续时间很长。

所有配置参数都是默认的,除了我必须添加-Djava.net.preferIPv4Stack=true -Djava.net.preferIPv4Addresses=true命令选项才能使推送工作。

我部署到 Tomcat 7.0.36,并且其配置中的所有内容也设置为默认值。

要更新UI,我只需调用

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

在我从 UI.init() 方法传递给每个组件的 UI 实例上。

我错过了什么吗?

当应用程序处于空闲状态(例如,您在应用程序中不执行任何操作)或无论用户是否处于活动状态时都会发生这种情况?可能是在客户端处于非活动状态半小时后,Tomcat 使用户会话失效,这就是您的 UI 分离的原因。如果不是这种情况,请考虑升级到最新的Vaadin,即现在的7.1.8。最近解决了很多推送问题。

最新更新