关于netty框架使用的出现的问题

追寻水中桥 2013-05-07

1.framedecode的时候报indexofboundexception

使用FrameDecoder解码的时候报IndexOutOfBoundsException错误。找了好几天才发现原来是netty使用FrameDecoder解码并没有把一个协议包的内容读完,就调用了后面的业务逻辑代码,造成业务逻辑在解析包的内容时长度不够,报错.

解决方法:

获得该包的长度之后再分析如果不够则returnnull;

2.在decode时,接收到的channelbuffer一定要把readerindex读完,也就是把position读到最大,否则框架会因为buffer还据有可读性而反复调用calldecode方法。

tip:到处exportrunnablejarfile时如果lunchconfiguration有没选项,则执行以下main函数在export就会有了

3.http://blog.csdn.net/babydavic/article/details/8554807

3.使用channelbuffer中的directbuff和buffer以及dynamicbuff是不同的,directbuff使用array方法在不同环境下会报upsupportedexception

相关推荐