2014-09-03 52 views
0

我試圖使用websocket使用openshift和wildfly 8.1。Websocket野蠅不工作

應用工作的本地wildfly服務器上的8080端口。

但是,我不能用端口8000

Curriously openshift服務器上連接的WebSocket的,如果我使用端口轉發(rhc port-forward),我可以在本地轉發的端口上連接。

我認爲在openshift上存在端口轉發的配置錯誤。

這裏是我的代碼:

import javax.websocket.EncodeException; 
import javax.websocket.CloseReason; 
import javax.websocket.EndpointConfig; 
import javax.websocket.OnClose; 
import javax.websocket.OnMessage; 
import javax.websocket.OnOpen; 
import javax.websocket.OnError; 
import javax.websocket.Session; 
import javax.websocket.server.ServerEndpoint; 

@ServerEndpoint("/ws/websocket") 
public class WebSocketService{ 
    @OnOpen 
    public void onOpen(Session peer, EndpointConfig config) { 
     System.err.println("Open"); 
     peer.getAsyncRemote().sendText("Hello"); 
    } 

    @OnClose 
    public void onClose(Session peer, CloseReason reason) { 
     System.err.println("Close"); 
    } 

    @OnError 
    public void onError(Session peer, Throwable throwable) { 
     System.err.println("Error"); 
    } 
} 

回答

2

在OpenShift WildFly端口應該是8080,不是8000,你提到的。

你能連接到本地主機:8080並重定向到你的OpenShift實例嗎?

Chrome開發人員工具是否顯示任何錯誤?

+0

使用chrome websocket工具,我嘗試了所有端口,8080和8000.使用8000顯示連接狀態,但我沒有收到任何東西。通過端口轉發,我可以在端口8080上連接和接收數據。您是否確認在OpenShift上,蠅蛆websocket端口是8080而不是8000? – nono 2014-09-05 10:08:34

+0

OpenShift上的WildFly應用程序端口是8080.您可以在onOpen,onError,onClose上打印消息嗎? – 2014-09-06 15:14:40

+0

我已經用上面的代碼創建了一個示例應用程序,並且我試圖連接但沒有成功,沒有任何內容在日誌文件中。 Websocket的網址是: ws://wildfly8-houari.rhcloud.com:8080/wildfly8/ws/websocket – nono 2014-09-08 05:40:31