2014-04-07 127 views
0

我已經創建瞭如下代碼所示的java-websocket服務器。org.java-Glassfish服務器上的Websocket服務器代碼

import org.java_websocket.WebSocket; 
import org.java_websocket.handshake.ClientHandshake; 
import org.java_websocket.server.WebSocketServer; 

public class JavaWebSocketServer1 extends WebSocketServer { 
    public JavaWebSocketServer1() throws UnknownHostException { 
     super(); 
    } 
     //all overriden methods onmessge onerror ,etc. 

} 

我與GlassFish的web.xml看起來像

<?xml version="1.0" encoding="UTF-8"?> 

<!DOCTYPE glassfish-web-app PUBLIC "-//GlassFish.org//DTD GlassFish Application Server 3.1 Servlet 3.0//EN" "http://glassfish.org/dtds/glassfish-web-app_3_0-1.dtd"> 
<glassfish-web-app> 
    <context-root>/JavaWebSocketServer</context-root> 
</glassfish-web-app> 

我使用如下的URL訪問的WebSocket,但它不工作

ws://IP:8080/JavaWebSocketServer/JavaWebSocketServer1 

但這是的WebSocket不能從訪問客戶端。我認爲在URL中有一些問題,我嘗試了不同的URL,但沒有爲我工作。請幫忙弄清楚它

回答

0

好像你正在使用http://java-websocket.org,它不能在Glassfish上運行。

它旨在作爲獨立服務器運行。如果您想在Glassfish上使用WebSocket,請參閱JSR 356 - 適用於WebSocket的Java API,它是Java EE 7的一部分。此Tutorial應該很有用。

+0

它在glassfish上效果很好,我試了一下。但是當談到如何做會話管理時,我切換回javax.websocekt服務器。 現在一切正常。所以我的客戶端是java-websocekt客戶端,服務器是javax.websocekt – nikhilbhr