我是vaadin的新手。我有几个问题:
Vaadin支持Atmosphere,所以google获取将启用websockets的插件。
服务器推送是几周后Vaadin 7.1的主要功能。请参阅Roadmap了解当前状态和相关的blog post。
在Vaadin 7.1之前,服务器推送下载最多的附加组件是ICEPush,但您也可以在add-on directory中找到其他替代方案。
jfarcand(Atmosphere的创造者)和Ludd的其他答案都是正确的,但现在已经过时了。
Vaadin 7.3.7(截至2015-01)现在合并了Atmosphere library。 Atmosphere提供Push的内置支持。无需添加任何jar,库,插件和附加组件。 Vaadin Push首先尝试使用WebSocket技术。如果没有,Vaadin Push会回归到其他方法。
三个简单的步骤:
@Push
注释添加到UI子类ScheduledExecutorService
在后台更新应用程序的数据。可能最好在ServletContextListener
中启动和停止执行程序服务,称为您的Vaadin Web应用程序启动并关闭。您可能希望一个用户的主用户界面线程更新另一个用户的显示,而不是步骤#2。基本上是相同的想法,并在Vaadin书中涵盖。
有关Server Push的更多信息,请参阅section 11.16中的The Book Of Vaadin。
在2015-01,我在Vaadin 7中发布了this answer for a minimal example of Push。您可以复制单个文件的内容,以在新的默认Vaadin项目中替换MyUI
类的内容。