У меня проблемы с подключением клиента к конечной точке WebSocket, когда приложение Spring-Boot 2.2 запускается в режиме отложенного запуска.
Мне удалось заставить этот учебник Spring.io работать. Он использует spring-boot-starter-parent версии 2.1.6. Я изменил файл pom.xml, чтобы использовать версию 2.2.0 spring-boot-starter-parent, и заставил его работать также.
Но когда я установил spring.main.lazy-initialization=true
в application.properties, клиент не подключается ксервер через WebSocket больше, когда я нажимаю кнопку «Подключить». В Chrome Developer Tool> Network> WebSocket я вижу, что клиент отправляет запрос CONNECT, но никогда не получает ответ «CONNECTED».
Я загрузил файл своего проекта в GitHub здесь: https://github.com/hirokiterashima/spring-boot-stomp-messaging-websocket. Первый коммит - это каталог 'complete' исходного проекта в учебнике Spring.io, который использует Spring-Boot 2.1. 6: https://github.com/spring-guides/gs-messaging-stomp-websocket/tree/master/complete. Второй коммит содержит мои изменения в pom.xml для использования Spring-Boot 2.2.0 и добавление файла application.properties для включения отложенной инициализации. Как вы можете видеть, все, что я сделал во втором коммите, это изменил Spring Boot 2.2.0, обновил зависимость jQuery webjars и включил отложенную инициализацию. Если вы закомментируете строку инициализации spring.main.lazy в application.properties, она будет работать.
Кто-нибудь еще сталкивался с подобной проблемой? Что я могу сделать, чтобы сделать эту работу?
Спасибо за помощь!