@Override
protected void handleTextMessage(WebSocketSession session, TextMessage message) throws Exception {
String userId = getUserId(session); // 사용자 아이디 추출
Set<WebSocketSession> sessions = userSessions.get(userId);
if (sessions != null) {
for (WebSocketSession webSocketSession : sessions) {
if (!webSocketSession.getId().equals(session.getId())) {
webSocketSession.sendMessage(message);
}
}
}
}
동시에 소켓을 통해 정보를 송수신 하다보니 세션이 계속 종료 되는 현상이 생겨서
synchronized (webSocketSession) {
webSocketSession.sendMessage(message);
}
추가
@Override
protected void handleTextMessage(WebSocketSession session, TextMessage message) throws Exception {
String userId = getUserId(session); // 사용자 아이디 추출
Set<WebSocketSession> sessions = userSessions.get(userId);
if (sessions != null) {
for (WebSocketSession webSocketSession : sessions) {
if (!webSocketSession.getId().equals(session.getId())) {
synchronized (webSocketSession) {
webSocketSession.sendMessage(message);
}
}
}
}
}