如何在Openshift V3中公开websocket?

如何在Openshift V3中公开websocket?,openshift,Openshift,我试图部署一个稍微修改过的Java7EE示例Web服务聊天代码版本。我想在开始编写代码之前,把所有的东西都引导起来,并进行讨论 端点代码如下所示: @ServerEndpoint("/chat") public class Websocket { @OnOpen public void open(Session session) { } @OnClose public void close(Session session) { } @OnError public void

我试图部署一个稍微修改过的Java7EE示例Web服务聊天代码版本。我想在开始编写代码之前,把所有的东西都引导起来,并进行讨论

端点代码如下所示:

@ServerEndpoint("/chat") 
public class Websocket { 

@OnOpen 
public void open(Session session) { 
} 

@OnClose 
public void close(Session session) { 
} 

@OnError 
public void onError(Throwable error) {
} 

@OnMessage 
public void message(String message, Session client) throws IOException, EncodeException {
    System.out.println("message: " + message);
    for (Session peer : client.getOpenSessions()) { 
        peer.getBasicRemote().sendText(message);
    } 
  } 
} 
然后,我有一个客户端,它用JavaScript连接到它。与此代码连接的:

var wsUri = "ws://" + document.location.hostname + ":8000" + document.location.pathname + "chat";

var websocket = new WebSocket(wsUri);
我相信OpenShift v3在开发webapp的过程中使用了8080,但我似乎无法使用任何websocket测试工具在任何端口上连接到这个websocket

应用程序当前部署在此处:


我是Openshift v3的新手,如有任何帮助,将不胜感激

OpenShift V3支持在同一端口上运行WebSocket。当服务通过路由公开时,该路由将是外部用于HTTP通信(包括WebSocket)的端口80。唯一的区别是URL中使用的子路径。是的!就在那里。。。我从来没有想到它会在默认情况下像那样公开!谢谢如果你把它作为答案贴出来,我会把它标对的!我是openshift的新手,你能举个例子吗?