使用Websockets在两个JAVA Web应用程序之间进行通信

问题描述 投票:0回答:1

我有一个Java Web应用程序(基于Servlet和JSP)在本地计算机上运行,​​具有使用HTML5和Java WebSocket api的聊天功能。 一个人可以与登录同一应用程序的其他用户聊天(使用两个不同的浏览器)。

我已经创建了相同项目(Web应用程序)的副本,并更改​​了所需的配置以将其作为其他Web应用程序运行。 我要的是一个登录用户(例如web-app1)可以与登录到web-app2的用户聊天。

这是ServerEndpoint批注的代码段和连接到Websocket端点的JavaScript代码

@ServerEndpoint(value = "/chat/{sessionId}",
    encoders = ChatMessageCodec.class,
    decoders = ChatMessageCodec.class,
    configurator = ChatEndpoint.EndpointConfigurator.class)

@WebListener
public class ChatEndpoint implements HttpSessionListener
{
 .....

.......................

var server;
try {
      server = new WebSocket('ws://' + window.location.host +'<c:url 
                              value="/chat/${chatSessionId}" />');
      server.binaryType = 'arraybuffer';

     } 
catch(error) {
               modalErrorBody.text(error);
               modalError.modal('show');
               return;
             }

我是Java Web开发的新手,此Web应用程序是我关注的书中的项目的一部分:|

java javascript jsp servlets websocket
1个回答
0
投票

我认为最好使用消息队列在两个或多个JVM之间进行通信。 WebSocket并非此类任务的理想解决方案

© www.soinside.com 2019 - 2024. All rights reserved.