如何在JSF中显示服务器生成的消息?

时间:2011-12-02 11:51:22

标签: java ajax spring primefaces spring-webflow-2

我目前正在使用spring(webflow)和jsf(和primefaces)构建模拟环境。在我的环境中,当服务器触发某些事件时会生成消息(例如,播放器的“现金位置”已更改)。我希望每次触发时都会在我的web应用程序中显示此消息。

我想我必须使用像反向AJAX这样的东西,但我无法让它在我的应用程序中运行。现在我想知道你是否看到任何其他可能的技术来实现我的目标。

2 个答案:

答案 0 :(得分:3)

您可以使用此处显示的组件http://www.primefaces.org/showcase/ui/ajaxPollHome.jsf进行常规AJAX轮询。

答案 1 :(得分:0)

在典型的服务器/客户端模型中,TCP套接字连接是最好的方法,因为连接通常保持打开状态,允许服务器和客户端以双向方式相互发送消息。

AJAX通信本质上是HTTP协议,默认情况下是无状态客户端请求/服务器响应单向模型。

自定义轮询AJAX组件(如从micfra链接的组件)是如何解决此问题的一个很好的示例。可以使用AJAX和Javascript构建自定义轮询组件。本质上,客户端需要在如此多的时间间隔之后向服务器请求状态更新。如果服务器有状态更新或新信息,那么使用Javascript事件可以更新客户端和服务器上的信息。