Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/jsf/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 使用JSF/PrimeFaces的观察者模式_Java_Jsf_Primefaces_Observer Pattern - Fatal编程技术网

Java 使用JSF/PrimeFaces的观察者模式

Java 使用JSF/PrimeFaces的观察者模式,java,jsf,primefaces,observer-pattern,Java,Jsf,Primefaces,Observer Pattern,在JSF中有没有一种推荐的实现Observer模式的方法,即从JavaBean强制进行UI更新 我已经看过PrimePush,但是他们的ShowCase示例似乎都不适用于我的浏览器(例如FF 19.0),这就是我回避它的原因 我目前正在使用PrimeFaces轮询定期更新各个组件。我正在考虑将轮询的间隔缩短为“1”,并将其操作方法阻止,直到服务器准备好推送。这是个好主意,还是会在某个时候取消这些长时间运行的请求 投票中的阻止操作基本上是手工推送,我建议不要这样做,你很可能会遇到很多问题。轮询更

在JSF中有没有一种推荐的实现Observer模式的方法,即从JavaBean强制进行UI更新

我已经看过PrimePush,但是他们的ShowCase示例似乎都不适用于我的浏览器(例如FF 19.0),这就是我回避它的原因

我目前正在使用PrimeFaces轮询定期更新各个组件。我正在考虑将轮询的间隔缩短为“1”,并将其操作方法阻止,直到服务器准备好推送。这是个好主意,还是会在某个时候取消这些长时间运行的请求



投票中的阻止操作基本上是手工推送,我建议不要这样做,你很可能会遇到很多问题。轮询更安全、更方便,但如果这还不够,您应该尝试使用现有的推送实现,如PrimePush。

可能您遇到的问题是如何实现推送。我已经在Chrome、Firefox和IE9上进行了测试。您使用的浏览器是什么?谢谢您的快速回复。我感兴趣的主要浏览器是Firefox19.0。我还没有在我的解决方案中实现推送,我实际上是在谈论他们的showcase示例。好吧,你可以在同一台机器上在Firefox 19和Chrome(或其他浏览器)中打开,然后从非Firefox浏览器发送消息,并在Firefox中查看答案,它应该会给你预期的行为(我在发表评论之前已经测试过了)。顺便说一句,我正在使用Firefox 19(直到现在我才意识到)刚刚用Firefox 19.0和Google Chrome 25.0进行了测试。这条消息在两个浏览器窗口中都没有显示(甚至在最初发送它的窗口中也没有显示)。我在FireBug控制台中也没有收到任何错误消息。我应该注意到任何陷阱吗?我想我发现了PrimePush的问题。由于某种原因,showcase示例在端口8080上运行PrimePush,这在我们的环境中被阻止。我将尝试实现我自己的prime push示例。Thx!我已经尝试过Pri现在端口问题已经解决,虽然它在我的测试环境中工作得很好,但我目前不会为了这一页而获得将其引入项目的许可。因此我将坚持轮询方法。