diff --git a/mall-im/src/main/java/com/suisung/mall/im/common/websocket/service/onchat/MallsuiteImSocketHandler.java b/mall-im/src/main/java/com/suisung/mall/im/common/websocket/service/onchat/MallsuiteImSocketHandler.java index 38fb372e..e1acddba 100644 --- a/mall-im/src/main/java/com/suisung/mall/im/common/websocket/service/onchat/MallsuiteImSocketHandler.java +++ b/mall-im/src/main/java/com/suisung/mall/im/common/websocket/service/onchat/MallsuiteImSocketHandler.java @@ -1,11 +1,9 @@ package com.suisung.mall.im.common.websocket.service.onchat; -import cn.hutool.core.collection.CollUtil; import cn.hutool.core.convert.Convert; import cn.hutool.core.util.IdUtil; import cn.hutool.json.JSONUtil; import com.suisung.mall.common.feignService.AccountService; -import com.suisung.mall.common.utils.CheckUtil; import com.suisung.mall.im.common.websocket.service.DistributedMessageService; import com.suisung.mall.im.common.websocket.service.DistributedSessionService; import com.suisung.mall.im.common.websocket.service.LocalSessionManager; @@ -65,6 +63,8 @@ public class MallsuiteImSocketHandler implements WebSocketHandler { // 存储到本地会话管理 localSessionManager.addUserSession(loginUserId, session); + logger.info("添加会话到本地成功:{}", localSessionManager.userSessions.values()); + // 注册到分布式会话服务 Map attributes = new HashMap<>(); attributes.put("user_id", session.getAttributes().get("user_id")); @@ -306,7 +306,7 @@ public class MallsuiteImSocketHandler implements WebSocketHandler { // 获取本地所有用户会话 for (List sessions : localSessionManager.userSessions.values()) { for (WebSocketSession session : sessions) { - if (session.isOpen()) { + if (session!=null&&session.isOpen()) { try { session.sendMessage(new TextMessage(message.toString())); } catch (IOException e) {