我正在编写一个Struts 2应用程序。在视图中,我有一个触发动作的按钮。该操作调用Runtime.exec来启动进程。此过程创建一个套接字,通过该套接字发送状态更新(以简单分隔的文本字符串的形式)。我希望这些状态更新能够反映在视图中。
我知道如何在服务器端编写套接字,但我不清楚在何处合并它以及如何在客户端在套接字上发送数据时更新JSP。
我将放置服务器套接字的位置:在侦听器线程中还是在启动进程的操作类中?
一旦我有状态更新,更新页面的最佳方法是什么?
另外,我想在不刷新页面的情况下进行更新 - 我想为此使用AJAX。
答案 0 :(得分:1)
我无法使用Struts 2,因为过滤器与我最后使用Atmosphere构建的servlet不兼容。基本上我使用了Meteor pub示例here,并修改了servlet以适合我们的应用程序。
此外,dojo toolkit支持websockets。我没有对此进行测试,但看起来它也可能是一种解决方案。
答案 1 :(得分:1)
看看我在jboss应用服务器https://github.com/harrybabu/struts2-cometd上使用cometd和struts2构建它的示例。希望它有所帮助...