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");
}
}
使用chrome websocket工具,我尝试了所有端口,8080和8000.使用8000显示连接状态,但我没有收到任何东西。通过端口转发,我可以在端口8080上连接和接收数据。您是否确认在OpenShift上,蝇蛆websocket端口是8080而不是8000? – nono 2014-09-05 10:08:34
OpenShift上的WildFly应用程序端口是8080.您可以在onOpen,onError,onClose上打印消息吗? – 2014-09-06 15:14:40
我已经用上面的代码创建了一个示例应用程序,并且我试图连接但没有成功,没有任何内容在日志文件中。 Websocket的网址是: ws://wildfly8-houari.rhcloud.com:8080/wildfly8/ws/websocket – nono 2014-09-08 05:40:31