Vaadin Push:禁用WebSocket并强制Vaadin使用流媒体

时间:2013-08-20 10:43:39

标签: jboss websocket vaadin openshift atmosphere

我在OpenShift实例(RedHat)上使用Vaadin 7.1.2。

OpenShift提供了一个node.js代理,该代理应与WebSocket兼容,但WebSocket连接在打开后立即关闭,没有错误消息(Vaadin只显示“connection closed”,“wasclean:true”,“reason” :“。)

因为没有错误,所以Vaadin / Atmosphere不会回退到流式传输模式,而是每两秒钟继续打开一次Websocket。

我正在寻找一种方法来完全禁用Vaadin /氛围中的websocket并启用流式传输。

2 个答案:

答案 0 :(得分:3)

您可以在UI类中使用以下注释来禁用websockets并强制执行流式处理:

@Push(transport = Transport.STREAMING)
public class PushUI extends UI {
    ...
}

答案 1 :(得分:1)

如今,所有 Vaadin 版本都弃用了 STREAMING 传输。你应该使用

@Push(transport = Transport.LONG_POLLING)

而是使用普通的 HTTP 而不是 WebSockets。