m0_74763306 2023-03-29 21:42 采纳率: 50%
浏览 19
已结题

Netty调用service报错

在Netty处理器里面channelRead方法service查询数据库报错

io.netty.channel.DefaultChannelPipeline : An exceptionCaught() event was fired, and it reached at the tail of the pipeline. It usually means the last handler in the pipeline did not handle the exception.

  • 写回答

2条回答 默认 最新

  • 远控源码 2023-03-30 09:44
    关注

    解决方法:

        @Override
        public void exceptionCaught(ChannelHandlerContext ctx, Throwable cause) throws Exception {
            super.exceptionCaught(ctx, cause);
            Channel channel = ctx.channel();
            //……
            if(channel.isActive())ctx.close();
        }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
    1人已打赏
  • CSDN-Ada助手 CSDN-AI 官方账号 2023-03-30 11:17
    关注
    不知道你这个问题是否已经解决, 如果还没有解决的话:
    • 帮你找了个相似的问题, 你可以看下: https://ask.csdn.net/questions/693758
    • 我还给你找了一篇非常好的博客,你可以看看是否有帮助,链接:Netty 解决TCP粘包/半包使用
    • 除此之外, 这篇博客: Netty :Netty介绍 & 实现简易多人聊天室中的 ChannelHandler 部分也许能够解决你的问题, 你可以仔细阅读以下内容或者直接跳转源博客中阅读:

      ChannelHandler会处理I/O事件或拦截I/O操作,并将其转发到ChannelPipeline中的下一个ChannelHandlerChannelHandler本身并没有提供很多方法,通常需要实现其子类型之一:

      • ChannelInboundHandler:处理入站I/O事件的抽象。
      • ChannelOutboundHandler:处理出站I/O操作的抽象。

      为了方便,Netty提供了以下适配器类:

      • ChannelInboundHandlerAdapter:处理入站I/O事件的一种简单实现。
      • ChannelOutboundHandlerAdapter:处理出站I/O操作的一种简单实现。

    如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 4月8日
  • 已采纳回答 3月31日
  • 创建了问题 3月29日

悬赏问题

  • ¥15 Qt 不小心删除了自带的类,该怎么办
  • ¥15 我需要在PC端 开两个抖店工作台客户端.(语言-java)
  • ¥15 有没有哪位厉害的人可以用C#可视化呀
  • ¥15 可以帮我看看代码哪里错了吗
  • ¥15 设计一个成绩管理系统
  • ¥15 PCL注册的选点等函数如何取消注册
  • ¥15 问一下各位,为什么我用蓝牙直接发送模拟输入的数据,接收端显示乱码呢,米思齐软件上usb串口显示正常的字符串呢?
  • ¥15 Python爬虫程序
  • ¥15 crypto 这种的应该怎么找flag?
  • ¥15 代码已写好,求帮我指出错误,有偿!