2015-08-24 3 views
0

В WebSocket-Server example из Нетти хранилища WebSocket-сервер инициализируется как этотWebSocket в Нетти

@Override 
public void initChannel(SocketChannel ch) throws Exception { 
    ChannelPipeline pipeline = ch.pipeline(); 
    if (sslCtx != null) { 
     pipeline.addLast(sslCtx.newHandler(ch.alloc())); 
    } 
    pipeline.addLast(new HttpServerCodec()); 
    pipeline.addLast(new HttpObjectAggregator(65536)); 
    pipeline.addLast(new WebSocketServerCompressionHandler()); 
    pipeline.addLast(new WebSocketServerHandler()); 
} 

Но WebSocketServerCompressionHandler не поставляется с Неттей-всех пакетом. Является ли это устаревшим примером или мне не хватает другого пакета.

ответ

0

Какую версию Netty вы используете? Пример, к которому вы привязаны, относится к Netty 5.0.

WebSocketServerCompressionHandler находится в пакете netty-codec-http для Netty 5.0, который должен быть включен в netty-all.

Если вы используете Нетти 4.0 или 4.1 Неттей попробовать следующий пример - https://github.com/netty/netty/blob/4.0/example/src/main/java/io/netty/example/http/websocketx/server/WebSocketServerInitializer.java

+0

Да я использую 4.0.30. Я думал, что примеры будут для стабильной версии. ваш пример имеет WebSocketServerHandler, который также не является частью пакета nett-all. Вместо этого я использую WebSocketServerProtocolHandler. –

+0

Его часть примера - https://github.com/netty/netty/blob/4.0/example/src/main/java/io/netty/example/http/websocketx/server/WebSocketServerHandler.java – jazd

Смежные вопросы