0
아주 간단한 소켓 서버를 구현하려고합니다. 새 줄이나 다른 구분 기호로 분할 된 메시지를 읽어야합니다. 이 문서에 따르면 netty 4.0 입력 바이트 디코딩
: http://netty.io/4.0/api/io/netty/handler/codec/string/StringDecoder.html 및 http://netty.io/4.0/api/io/netty/handler/codec/DelimiterBasedFrameDecoder.html트릭을 할해야 채널 초기화
ChannelInitializer<SocketChannel> channelInitializer = new ChannelInitializer<SocketChannel>() {
@Override
public void initChannel(SocketChannel ch) throws Exception {
ch.pipeline().addLast("frameDecoder", new DelimiterBasedFrameDecoder(Delimiters.lineDelimiter()));
ch.pipeline().addLast("stringDecoder", new StringDecoder(CharsetUtil.UTF_8));
// Encoder
ch.pipeline().addLast("stringEncoder", new StringEncoder(CharsetUtil.UTF_8));
}
};
이 코드입니다.
그러나 제공된 매개 변수로 작동하는 디코더 및 인코더에는 적합한 생성자가 없습니다. 그들은 어떤 정수를 첫 번째 매개 변수와 Byte 배열로 기대합니다. stringDecoder만이 괜찮은 것 같습니다.
무엇이 여기에 있습니까?
죄송합니다. 질문과 문제를 이해할 수 없습니다. 다시 말해 줄 수 있니? –
간단히 : 문서에서 사용한 사용 예제가 작동하지 않습니다. 그것이 문제이다. 질문은 올바르게 사용하는 방법입니다. – bazo