2014-09-03 72 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

相关问题