2017-07-05 5 views
-1

Ich habe eine einfache Web-Buchse:Warum Mapping Websocket nicht funktioniert?

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

    @OnMessage 
    public void onMessage(final Session session, final String msg) { 
     try { 

      cashing(session, msg); 
      newsletter(session, msg); 

     } catch (IOException e) { 
      e.printStackTrace(); 
     } 
    } 
} 

Aber meine Ansicht Chat-Seite index.jsp immer http://localhost:8080/PsiNavigator zu verankern abbildet. Wenn ich versuche, Pfad /chat hinzuzufügen, erhalte ich 404. Unabhängig von Wert in Annotation @ServerEndpoint("/chat") oder ("bla-bla") immer funktioniert nur root in Browser:

enter image description here

Meine Anmerkung ist: @ServerEndpoint("/chat") sowohl auf dem Bildschirm. enter image description here

Wie URL für Browser zu http://localhost:8080/PsiNavigator/chat ändern? Danke.

+0

Es ist unveränderlich, weil es keinen Sinn macht, es zur Laufzeit zu ändern, aber das ist nicht, was Sie tatsächlich fragen. Sie fragen, warum Ihr gegenwärtiges statisches, unveränderliches Mapping nicht funktioniert. – EJP

+0

@EJP Nein mein statisches Geschenk ist Arbeit siehe im ersten Bildschirm aber Chat immer Zuordnung zu root. Es ist ein Problem. – Pavel

Antwort

1

I Sache, dass Sie auf Ihren WebSocket-Endpunkt mit WS-Protokoll und nicht http zugreifen müssen.

Ich empfehle Ihnen, diese hilfreiche Tuto zu folgen, die zeigt, wie man ein komplettes WebSocket-Anwendungsbeispiel (Backend und Frontend) erstellt.

Verwandte Themen