无法连接Tomcat中的Java WebSocket

4
我使用NetBeans IDE创建了Java WebSocket应用程序,并在GlassFish服务器上成功运行。但当我将服务器更改为Apache Tomcat时,它无法正常运行。我无法与客户端建立连接。这是我的客户端代码(JavaScript):
                if(webSocket !== undefined && webSocket.readyState !== WebSocket.CLOSED){
                   writeResponse("WebSocket is already opened.");
                   return;
                }
                webSocket = new WebSocket("ws://localhost:8080/Sl2World/slworldendpoint");

                webSocket.onopen = function(event){
                    if(event.data === undefined)
                        return; 
                    writeResponse(event.data);
                };

                webSocket.onmessage = function(event){

                    writeResponse(event.data);                    
                }; 
                webSocket.onclose = function(event){
                    writeResponse("Connection closed");
                }; 


function writeResponse(text){
       alert(text);  
}

这是我的Websocket端点代码(Java)

@OnOpen
public void onOpen(Session session){   
    try {
        session.getBasicRemote().sendText("Connection Established");
    } catch (IOException ex) {
        ex.printStackTrace();
    }
} 
@OnMessage
public void onMessage(String message, Session session){
    System.out.println("Message from " + session.getId() + ": " + message);        
    try {            
        sess.getBasicRemote().sendText("message send");
        }
    } catch (IOException ex) {
        ex.printStackTrace();
    }
} 
@OnClose
public void onClose(Session session){
    System.out.println("Session " +session.getId()+" has ended");

}

当我在Tomcat服务器上运行时,输出为“连接关闭”,但当我在GlassFish服务器上运行时,输出为“连接已建立”。
我想在Tomcat服务器上运行我的应用程序。请帮忙解决?

你正在使用Tomcat 8吗? - Stefan
我正在使用Tomcat 6.0.4。 - Sandun Harshana
1个回答

2
Tomcat 6不支持Websocket。请升级到更高的版本(至少Tomcat 7与JDK 7)。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接