websocket接受消息后报An exceptionCaught() event was fired, and it reached at the tail of the pipeline.

本文主要是介绍websocket接受消息后报An exceptionCaught() event was fired, and it reached at the tail of the pipeline.,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

卤煮今天在解决完跨域问题之后,用另一个ip像服务器发数据,能正常收到数据,但是又出现了新的错误。
在做websocket连接之后,前端发送消息,收到之后,会报以下错误:
客户端收到服务器数据:787878877878

2019-05-18 11:37:46.015 WARN 11188 — [ntLoopGroup-4-1] 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.大概就说是管道最后出现了个什么异常,handler中没有处理这个异常的方法。
net.sf.json.JSONException: A JSONObject text must begin with ‘{’ at character 1 of 787878877878
at net.sf.json.util.JSONTokener.syntaxError(JSONTokener.java:499) ~[json-lib-2.4.jar:na]
at net.sf.json.JSONObject._fromJSONTokener(JSONObject.java:972) ~[json-lib-2.4.jar:na]
at net.sf.json.JSONObject._fromString(JSONObject.java:1201) ~[json-lib-2.4.jar:na]
at net.sf.json.JSONObject.fromObject(JSONObject.java:165) ~[json-lib-2.4.jar:na]
at net.sf.json.JSONObject.fromObject(JSONObject.java:134) ~[json-lib-2.4.jar:na]
at com.jys.websocket.handler.JsonUtils.getMap4Json(JsonUtils.java:45) ~[classes/:na]
at com.jys.websocket.handler.WebSocketHandler.handleWebSocketFream(WebSocketHandler.java:43) ~[classes/:na]
at com.jys.websocket.handler.WebSocketHandler.channelRead0(WebSocketHandler.java:114) ~[classes/:na]
at com.jys.websocket.handler.WebSocketHandler.channelRead0(WebSocketHandler.java:19) ~[classes/:na]
at io.netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:105) ~[netty-all-4.1.34.Final.jar:4.1.34.Final]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:359) [netty-all-4.1.34.Final.jar:4.1.34.Final]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:345) [netty-all-4.1.34.Final.jar:4.1.34.Final]
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:337) [netty-all-4.1.34.Final.jar:4.1.34.Final]
at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:102) [netty-l]


解决办法:
我们在自己的SocketHandler 里面
重写一个exceptionCaught 方法

@Override
public void exceptionCaught(ChannelHandlerContext ctx, Throwable cause) throws Exception {

}

重启服务器就行了。
在这里插入图片描述

这篇关于websocket接受消息后报An exceptionCaught() event was fired, and it reached at the tail of the pipeline.的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/329227

相关文章

在Android平台上实现消息推送功能

《在Android平台上实现消息推送功能》随着移动互联网应用的飞速发展,消息推送已成为移动应用中不可或缺的功能,在Android平台上,实现消息推送涉及到服务端的消息发送、客户端的消息接收、通知渠道(... 目录一、项目概述二、相关知识介绍2.1 消息推送的基本原理2.2 Firebase Cloud Me

关于WebSocket协议状态码解析

《关于WebSocket协议状态码解析》:本文主要介绍关于WebSocket协议状态码的使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录WebSocket协议状态码解析1. 引言2. WebSocket协议状态码概述3. WebSocket协议状态码详解3

SpringKafka消息发布之KafkaTemplate与事务支持功能

《SpringKafka消息发布之KafkaTemplate与事务支持功能》通过本文介绍的基本用法、序列化选项、事务支持、错误处理和性能优化技术,开发者可以构建高效可靠的Kafka消息发布系统,事务支... 目录引言一、KafkaTemplate基础二、消息序列化三、事务支持机制四、错误处理与重试五、性能优

SpringIntegration消息路由之Router的条件路由与过滤功能

《SpringIntegration消息路由之Router的条件路由与过滤功能》本文详细介绍了Router的基础概念、条件路由实现、基于消息头的路由、动态路由与路由表、消息过滤与选择性路由以及错误处理... 目录引言一、Router基础概念二、条件路由实现三、基于消息头的路由四、动态路由与路由表五、消息过滤

Redis中管道操作pipeline的实现

《Redis中管道操作pipeline的实现》RedisPipeline是一种优化客户端与服务器通信的技术,通过批量发送和接收命令减少网络往返次数,提高命令执行效率,本文就来介绍一下Redis中管道操... 目录什么是pipeline场景一:我要向Redis新增大批量的数据分批处理事务( MULTI/EXE

Java springBoot初步使用websocket的代码示例

《JavaspringBoot初步使用websocket的代码示例》:本文主要介绍JavaspringBoot初步使用websocket的相关资料,WebSocket是一种实现实时双向通信的协... 目录一、什么是websocket二、依赖坐标地址1.springBoot父级依赖2.springBoot依赖

Spring Boot整合消息队列RabbitMQ的实现示例

《SpringBoot整合消息队列RabbitMQ的实现示例》本文主要介绍了SpringBoot整合消息队列RabbitMQ的实现示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的... 目录RabbitMQ 简介与安装1. RabbitMQ 简介2. RabbitMQ 安装Spring

springboot rocketmq配置生产者和消息者的步骤

《springbootrocketmq配置生产者和消息者的步骤》本文介绍了如何在SpringBoot中集成RocketMQ,包括添加依赖、配置application.yml、创建生产者和消费者,并展... 目录1. 添加依赖2. 配置application.yml3. 创建生产者4. 创建消费者5. 使用在

如何通过Python实现一个消息队列

《如何通过Python实现一个消息队列》这篇文章主要为大家详细介绍了如何通过Python实现一个简单的消息队列,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录如何通过 python 实现消息队列如何把 http 请求放在队列中执行1. 使用 queue.Queue 和 reque

JavaWeb-WebSocket浏览器服务器双向通信方式

《JavaWeb-WebSocket浏览器服务器双向通信方式》文章介绍了WebSocket协议的工作原理和应用场景,包括与HTTP的对比,接着,详细介绍了如何在Java中使用WebSocket,包括配... 目录一、概述二、入门2.1 POM依赖2.2 编写配置类2.3 编写WebSocket服务2.4 浏