2012-10-18 54 views
1

如何在JSF Java EE应用程序中使用推送机制?实时更新值?

我有几个后端值,有时可能每隔一秒钟更换一次,有时每隔一分钟更换一次,有时每小时只更换一次。

我不想拉这个变量,因为当几个客户连接到这个页面时,这将是昂贵的。

所以我需要一个推动机制,只更新前端的值,如果他们改变。有谁知道我该怎么做?

+0

我从来没有使用过它,但PrimeFaces提供了Push支持:http://www.primefaces.org/showcase/push/index.jsf。您可能还想检查它的文档:http://www.primefaces.org/documentation.html。顺便说一句,你有没有检查使用长轮询的可能性? – RinaldoPJr

+0

长轮询究竟是什么? – membersound

+0

有点广泛,可以在这里完整解释。看到这个链接:http://en.wikipedia.org/wiki/Push_technology#Long_polling。基本上,这个请求已经完成,但是只有在有回报的时候才会回应。 – RinaldoPJr

回答

0

您可以使用RichFaces a4j:push。客户端通过使用WebSocket连接或长轮询方法创建与服务器的永久连接。永久连接由Atmosphere Framework管理。 推送可以通过程序化API(主题)或使用CDI事件(@Push)进行控制。代码非常精简。