|
Модераторы: LSD, AntonSaburov |
|
ZVano |
|
||||
Опытный Профиль Группа: Участник Сообщений: 258 Регистрация: 11.12.2006 Где: Украина, Кривой Р ог Репутация: нет Всего: 4 |
0. Имею рабочий WebSocketServer на "ws://localhost:8000".
Он запущен и готов к работе. Для простоты считаем что это сервер чата. 1. Чат-клиент. Запускаю. Выполняется успешный коннект к серверу используя Jetty WebSocketClient wsClient 2. Чат-клиент. Запрашиваю статус соединения. wsClient.isStarted() // Возвращает true 3. Чат-сервер. Вручную выключаю. 4. Чат-клиент. Запрашиваю статус соединения wsClient.isStarted() // Возвращает true Класс-обертка для инициализвации соединения
Класс, который дергает Jetty
Вопросы: 1. Почему после обрыва соединения вызов wsClient.isStarted() возвращает true? 2. Как правильно работать с WebSocket клиентом от Jetty, если подразумевается длительное соединение? В родной документации приведен пример короткоживущего SimpleEchoClient приложения. Буду премного благодарен, если кто-то запостит ссылки на примеры. Это сообщение отредактировал(а) ZVano - 23.9.2016, 17:50 -------------------- НЕ ФЛУДИМ. Пользуемся кнопками "+" или "-" для выражения своего отношения к теме или сообщению. Гуглим "Как правильно задавать вопросы" |
||||
|
|||||
ZVano |
|
||||
Опытный Профиль Группа: Участник Сообщений: 258 Регистрация: 11.12.2006 Где: Украина, Кривой Р ог Репутация: нет Всего: 4 |
Не знаю правильно сделал или нет, но теперь я проверяю сессию, которая приходит в onConnect моего MyWebSocketClient.
Фрагмент из Session.java
Это сообщение отредактировал(а) ZVano - 28.9.2016, 17:45 -------------------- НЕ ФЛУДИМ. Пользуемся кнопками "+" или "-" для выражения своего отношения к теме или сообщению. Гуглим "Как правильно задавать вопросы" |
||||
|
|||||
ZVano |
|
||||||
Опытный Профиль Группа: Участник Сообщений: 258 Регистрация: 11.12.2006 Где: Украина, Кривой Р ог Репутация: нет Всего: 4 |
3я часть марлезонского балета - теперь статус соединения в сессии не меняется, если в момент разрыва соединения основной поток приложения был заблокирован.
Далее искуственный пример:
Получим такой результат:
Вопрос остается прежним - Как определить состояние подключения? Интересует готов WebSocket к передаче данных или нет. Неприятной неожиданностью стал тот факт, что в данном случае отправка сообщения не вызывает исключения "this.session.getRemote().sendString(...)", а по документации должен свалиться.
Это сообщение отредактировал(а) ZVano - 24.10.2016, 17:32 -------------------- НЕ ФЛУДИМ. Пользуемся кнопками "+" или "-" для выражения своего отношения к теме или сообщению. Гуглим "Как правильно задавать вопросы" |
||||||
|
|||||||
Правила форума "Java" | |
|
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Java: Работа с сетью | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |