Newer
Older
CosmosServer / src / test / java / WebSocketTest / WebSocketSampleServer.java
package WebSocketTest;

import org.springframework.web.socket.WebSocketSession;

import javax.websocket.*;
import javax.websocket.server.ServerEndpoint;
import java.util.HashSet;
import java.util.Set;

@ServerEndpoint("/WebSocketServer")
public class WebSocketSampleServer {
    private static final Set<Session> sessions = new HashSet<>();

    @OnOpen
    public void onOpen(Session session) {
        /* セッション確立時の処理 */
        System.out.println("WebSocketセッション確立");
        sessions.add(session);
    }

    @OnMessage
    public String onMessage(String message) {
        /* メッセージ受信時の処理 */
        System.out.println("WebSocket受信:" + message);
        for(Session session : sessions){
            session.getAsyncRemote().sendText(message);
            //session.getBasicRemote().sendText(message);
        }
        return "正常にメッセージを受信しました。";
    }

    @OnError
    public void onError(Throwable th) {
        /* エラー発生時の処理 */
        System.out.println("WebSocketエラー:" + th.getMessage());
    }

    @OnClose
    public void onClose(Session session) {
        /* セッション解放時の処理 */
        System.out.println("WebSocketセッション確立");
    }
}