2014-09-03 5 views
0

opensshift와 wildfly를 사용하여 websocket을 사용하려고합니다. 8.1.Websocket wildfly가 작동하지 않습니다.

응용 프로그램은 내가 포트 포워딩을 사용하는 경우, 포트 8000

에게 Curriously를 사용하여 웹 소켓에 대한 openshift 서버에 연결할 수 아니에요, 포트 8080

의 로컬 제이보스 서버에서 작동하지만, (rhc port-forward), 로컬 전달 포트에 연결할 수 있습니다.

opensshift에서 포트 포워딩에 대한 구성이 잘못되었다고 생각합니다. 당신이 언급 한 바와 같이 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

제이보스 포트가 8080이 아니라 8000이어야한다 :

여기 내 코드입니다.

localhost : 8080에 연결할 수 있으며 OpenShift 인스턴스로 리디렉션 되었습니까?

Chrome 개발자 도구에 오류가 표시 되나요?

+0

크롬 websocket 도구를 사용하여 모든 포트, 8080 및 8000을 시도했습니다. 8000을 사용하면 연결된 상태가 표시되지만 아무 것도받지 못했습니다. 포트 포워딩을 사용하면 포트 8080에서 데이터를 연결하고 수신 할 수 있습니다. OpenShift에서 wildfly websocket 포트가 8000이 아니라 8080인지 확인하십니까? – nono

+0

OpenShift의 WildFly 응용 프로그램 포트는 8080입니다. onOpen, onError, onClose에서 메시지를 인쇄 할 수 있습니까? –

+0

위의 코드로 샘플 응용 프로그램을 만들었으므로 성공적으로 연결하려고 시도했지만 아무 것도 로그 파일에 없습니다. webSocket URL은 입니다. ws : //wildfly8-houari.rhcloud.com : 8080/wildfly8/ws/websocket – nono

관련 문제