java Struts2推送通知/WebSocket交互最佳实践
我正在编写一个Struts 2应用程序。在视图中,我有一个按钮可以触发一个动作。该操作调用运行时。exec启动一个进程。此过程创建一个socket,通过该socket发送状态更新(以简单分隔文本字符串的形式)。我希望这些状态更新能够反映在视图中
我知道如何在服务器端编写socket,但我完全不清楚在哪里合并它,以及在客户机在socket上发送数据时如何更新JSP
我将把服务器socket放在哪里:在侦听器线程中还是在启动进程的操作类中
一旦我有了状态更新,更新页面的最佳方式是什么
另外,我想在不刷新页面的情况下进行更新——我假设使用AJAX来实现这一点
# 1 楼答案
看看我在jboss应用服务器https://github.com/harrybabu/struts2-cometd上使用Comet和struts2构建的示例。希望对你有帮助
# 2 楼答案
我无法将其与Struts 2配合使用,因为过滤器与我最终使用Atmosphere构建的servlet配合不好。基本上,我使用Meteor pub示例here,并修改servlet以适合我们的应用程序
另外,dojo toolkit支持WebSocket。我还没有测试过这个,但它看起来也可能是一个解决方案