2014-10-20 160 views
4

我使用NetBeans IDE創建了Java websocket應用程序。它在GlassFish服務器上運行良好。但是,當我將服務器更改爲Apache Tomcat時,它不會很好地運行。我無法與客戶端建立連接。這裏是我的客戶端代碼(JavaScript的)不連接到Tomcat中的Java websocket

   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服務器上運行我的應用程序。幫幫我?

+0

您使用的是Tomcat 8嗎? – Stefan 2014-10-20 10:58:59

+0

我正在使用tomcat 6.0.4 – 2014-10-21 12:04:41

回答

2

Tomcat 6沒有Websocket支持。升級到更高的version(至少使用JDK 7的Tomcat 7)。