我需要连接一个SocketServer,接收数据,然后将其推送回客户端(Web浏览器)。
我只需要确认方法。我将创建一个Socket连接,它将继续在ServletContextListener中监听消息。然后将该消息存储在ServletContext中,以便将其推送回客户端浏览器。
我应该在ServletContextLister中创建套接字连接吗?或者有没有其他方式来听socket?
为了将数据推送回客户端,我不希望进行双向通信。我应该去SSE或Html5 WebSockets吗?任何支持SSE或WebSocket的Java框架以及客户端库?
由于
答案 0 :(得分:0)
我实现了这个并且工作正常。对于服务器,我使用了Jetty 8并使用了jetty的WebSocket。
简单地说,我实现的是,为了收听来自SocketServer的消息,我实现了ServletContextListener,它初始化将使用消息的Socket。
当用户点击url时,我将WebSocket连接添加到Collection并将该集合存储为ServletContext属性。然后,Socket访问此WebSocket列表,该消息在消息到达时迭代并发送消息。然后将该消息推送回所有连接的客户端。