Связь через веб-сокет Apache mina

У меня проблема с Apache mina и связью через веб-сокет.

Рукопожатие работает нормально, и у меня есть рабочее соединение с моим сервером, но если мой клиент отправляет строку на мой сервер, строки получаются, но я не могу показать их в консоли.

public void messageReceived(IoSession session, Object message) throws Exception {
System.out.println(message.toString());
if(message.toString().length() > 20 && message.toString().substring(0, 17).equals("Sec-WebSocket-Key")) {
  new Thread(new WebsocketHandler(session, message)).start();
} else {
  //
}}

Мой журнал сервера говорит, что сообщение получает

ИНФОРМАЦИЯ: ПОЛУЧЕНО: HeapBuffer[pos=0 lim=10 cap=2048: 81 84 88 45 2B 31 DC 00 78 65]

Но я не могу показать сообщение, я думаю, что это мой фильтр TextLineCodecFactory, но я не знаю, почему.


person Norwido    schedule 17.07.2013    source источник


Ответы (2)


Попробуйте этот кодек, который обрабатывает все, что связано с веб-сокетами: https://issues.apache.org/jira/browse/DIRMINA-907

person AndresQ    schedule 27.11.2013

добавить "\r\n" при записи.

byte[] bytes = content.getBytes("UTF-8");
outputStream.write(bytes);
outputStream.write("\r\n".getBytes());

person chen yuzhe    schedule 01.12.2015