websocket 服务端onMessage()方法一操作数据库就报空指针异常

想用websocket实现新消息提醒功能,就比如a发了一篇文章然后有人回复了a,当a上线时出现消息提醒,如下图

clipboard.png

后台的onMessage()方法中若是直接用session.getBasicRemote().sendText("haha");是可以正常运行的,可是一操作数据库就出了空指针异常..

clipboard.png

clipboard.png
前端js处理:

clipboard.png

clipboard.png

有遇到过相同问题的人吗?求告知..

阅读 11.7k
3 个回答

开发过程中,某个未被spring托管的类(例如MessageComponent)想调用一个被spring托管的对象的方法(例如MessageService对象),如果我们像下面代码的方式去调用方法,则会出现空指针的异常。

clipboard.png

解决方法:

clipboard.png

使用ApplicationHelper获取所需的MessageService对象

clipboard.png

这个空指针weosocket 无关,应该是你 messageService 实例的依赖注入有问题。
应该检查一下你的 MessageService 是否被 IOC 容器托管,即类上是否加了 @Service 或者 @Component 注解。

新手上路,请多包涵

兄弟,webSocket访问数据库就报空指针怎么解决的,急求,盼回信

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
宣传栏