我需要7个websockets

问题描述 投票:3回答:3

我是vaadin的新手。我有几个问题:

  1. Vaadin 7或更高版本是否支持websockets?
  2. Vaadin是否还有其他功能,例如将数据从服务器推送到客户端(例如websockets)?
websocket vaadin
3个回答
4
投票

Vaadin支持Atmosphere,所以google获取将启用websockets的插件。


2
投票

服务器推送是几周后Vaadin 7.1的主要功能。请参阅Roadmap了解当前状态和相关的blog post

在Vaadin 7.1之前,服务器推送下载最多的附加组件是ICEPush,但您也可以在add-on directory中找到其他替代方案。


2
投票

Update - Push Is Built-In

jfarcandAtmosphere的创造者)和Ludd的其他答案都是正确的,但现在已经过时了。

Vaadin 7.3.7(截至2015-01)现在合并了Atmosphere library。 Atmosphere提供Push的内置支持。无需添加任何jar,库,插件和附加组件。 Vaadin Push首先尝试使用WebSocket技术。如果没有,Vaadin Push会回归到其他方法。

三个简单的步骤:

  1. @Push注释添加到UI子类
  2. 使用ScheduledExecutorService在后台更新应用程序的数据。可能最好在ServletContextListener中启动和停止执行程序服务,称为您的Vaadin Web应用程序启动并关闭。
  3. 当新数据准备就绪时,后台线程调用UI::access方法来安排对UI线程(请求处理线程)上的用户界面组件(窗口小部件)的访问和更改。

您可能希望一个用户的主用户界面线程更新另一个用户的显示,而不是步骤#2。基本上是相同的想法,并在Vaadin书中涵盖。

Book Of Vaadin

有关Server Push的更多信息,请参阅section 11.16中的The Book Of Vaadin

Minimal Example

在2015-01,我在Vaadin 7中发布了this answer for a minimal example of Push。您可以复制单个文件的内容,以在新的默认Vaadin项目中替换MyUI类的内容。

© www.soinside.com 2019 - 2024. All rights reserved.