将解码消息从一个通道写入另一个通道导致IllegalBufferAccessException异常

将解码消息从一个通道写入另一个通道导致IllegalBufferAccessException异常,exception,proxy,netty,Exception,Proxy,Netty,我对内蒂不熟悉。我更改了HexDumpProxy的示例,通过添加http编解码器处理程序将解码后的http消息从服务器通道写入后端客户端通道,当客户端获得http响应时,它将解码消息并将响应消息写回inboundChannel(在messageReceived事件中)。但这总是会导致io.netty.buffer.IllegalBufferAccessException异常。我将非常感谢你的任何帮助。谢谢你抽出时间 io.netty.buffer.IllegalBufferAccessExcep

我对内蒂不熟悉。我更改了HexDumpProxy的示例,通过添加http编解码器处理程序将解码后的http消息从服务器通道写入后端客户端通道,当客户端获得http响应时,它将解码消息并将响应消息写回inboundChannel(在messageReceived事件中)。但这总是会导致io.netty.buffer.IllegalBufferAccessException异常。我将非常感谢你的任何帮助。谢谢你抽出时间

io.netty.buffer.IllegalBufferAccessException 位于io.netty.buffer.AbstractReferenceCountedByteBuf.release(AbstractReferenceCountedByteBuf.java:114) 位于io.netty.handler.codec.http.DefaultFullHttpRequest.release(DefaultFullHttpRequest.java:69) 在io.netty.buffer.BufUtil.release(BufUtil.java:76) 在io.netty.channel.ChannelHandlerUtil.handleInboundBufferUpdated(ChannelHandlerUtil.java:62) 在io.netty.channel.ChannelInboundMessageHandlerAdapter.inboundBufferUpdated处(ChannelInboundMessageHandlerAdapter.java:100) 在io.netty.channel.DefaultChannelHandlerContext.invokeInboundBufferUpdated处(DefaultChannelHandlerContext.java:1031) 位于io.netty.channel.DefaultChannelHandlerContext.fireInboundBufferUpdated0(DefaultChannelHandlerContext.java:998) 在io.netty.channel.DefaultChannelHandlerContext.fireInboundBufferUpdated(DefaultChannelHandlerContext.java:978) 在io.netty.channel.ChannelHandlerUtil.handleInboundBufferUpdated(ChannelHandlerUtil.java:69) 在io.netty.channel.ChannelInboundMessageHandlerAdapter.inboundBufferUpdated处(ChannelInboundMessageHandlerAdapter.java:100) 在io.netty.channel.DefaultChannelHandlerContext.invokeInboundBufferUpdated处(DefaultChannelHandlerContext.java:1031) 位于io.netty.channel.DefaultChannelHandlerContext.fireInboundBufferUpdated0(DefaultChannelHandlerContext.java:998) 在io.netty.channel.DefaultChannelHandlerContext.fireInboundBufferUpdated(DefaultChannelHandlerContext.java:978) 在io.netty.handler.codec.ReplayingDecoder.callDecode(ReplayingDecoder.java:441) 位于io.netty.handler.codec.ByteToMessageDecoder.inboundBufferUpdated(ByteToMessageDecoder.java:69) 在io.netty.channel.ChannelInboundByteHandlerAdapter.inboundBufferUpdated(ChannelInboundByteHandlerAdapter.java:46) 位于io.netty.channel.CombinedChannelDuplexHandler.inboundBufferUpdated(CombinedChannelDuplexHandler.java:175) 在io.netty.channel.DefaultChannelHandlerContext.invokeInboundBufferUpdated处(DefaultChannelHandlerContext.java:1031) 位于io.netty.channel.DefaultChannelHandlerContext.fireInboundBufferUpdated0(DefaultChannelHandlerContext.java:998) 在io.netty.channel.DefaultChannelHandlerContext.fireInboundBufferUpdated(DefaultChannelHandlerContext.java:978) 在io.netty.channel.DefaultChannelPipeline.fireInboundBufferUpdated(DefaultChannelPipeline.java:828)上 位于io.netty.channel.nio.AbstractNioByteChannel$niobyteensafe.read(AbstractNioByteChannel.java:118) 位于io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:429) 位于io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:392) 位于io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:322) 位于io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEventExecutor.java:114)
在java.lang.Thread.run(未知源)

上,API自本次发布以来已发生更改。。请使用最新版本,即4.0.0.CR9