Почему не работает мой чат весной websocket? - PullRequest
0 голосов
/ 13 февраля 2020

Я делаю свой первый проект в Springboot. Поэтому я хочу, чтобы чат был на моей стартовой странице, но он не работает. Я делаю это в Spring Websocket. У меня есть это на моей странице, но когда я пишу имя пользователя, чат не открывается.

Мой контроллер:

public class ChatController {
@GetMapping("/index")
    @MessageMapping("/chat.sendMessage")
    @SendTo("/topic/public")
    public ChatMessage sendMessage(@Payload ChatMessage chatMessage) {
        return chatMessage;
    }

    @MessageMapping("/chat.addUser")
    @SendTo("/topic/public")
    public ChatMessage addUser(@Payload ChatMessage chatMessage,
                               SimpMessageHeaderAccessor headerAccessor) {
        // Add username in web socket session
        headerAccessor.getSessionAttributes().put("username", chatMessage.getSender());
        return chatMessage;
    }

}

Java класс:

public class ChatMessage {

        private MessageType type;
        private String content;
        private String sender;

        public enum MessageType {
            CHAT,
            JOIN,
            LEAVE
        }

        public MessageType getType() {
            return type;
        }

        public void setType(MessageType type) {
            this.type = type;
        }

        public String getContent() {
            return content;
        }

        public void setContent(String content) {
            this.content = content;
        }

        public String getSender() {
            return sender;
        }

        public void setSender(String sender) {
            this.sender = sender;
        }
    }
...