Я создаю приложение на java, которое имеет встроенный сервер websocket на основе jetty. Клиентом является стандартная реализация websocket в google chrome. Все работает нормально, только если нет передачи данных между сервером и клиентом после определенного времени, соединение закрывается. Я не уверен, кто закрывает соединение: сервер jetty или браузер chrome.
Я думаю, что решение этой проблемы - посылать сообщение каждые x секунд, но я открыт для лучших решений.
Итак... мои вопросы:
Это что-то, что требует протокол websocket, и в этом случае браузер chrome закрывает мое соединение?
Это что-то, что больше связано с jetty и имеет больше или меньше отношения к протоколу websocket? В этом случае как отключить это в jetty?
Есть ли другая проблема?
Спасибо
UPDATE: даже если я отправляю 1 сообщение в секунду, соединение все равно закрывается
Та же проблема: использовал WebSockets & sockjs-client/1.0.3/sockjs библиотека с @ServerEndPoint на Стороне сервера Java. websocket соединения продолжали повреждаться непостоянно.
я переместился в использование, Топают и sockJS (отказывающийся от @ServerEndpoint), но встретился с другой проблемой, популярной на ТАК-/info=34424 - с 404 ошибками -
я должен был отказаться от использования xml подхода библиотеки Stomp Spring, как предложено в другой места. У меня есть Spring 4.2 в моем проекте, и многие SockJS Топают, реализации обычно работают хорошо с реализациями Начальной загрузки Spring. Эта реализация от Baeldung работала (на меня, не изменяясь от Spring 4.2 до 5).
После Используя зависимости, упомянутые в его блоге, это все еще дало мне ClassNotFoundError. Я добавил ниже зависимости для фиксации его.
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>4.2.3.RELEASE</version>
</dependency>