首页 >社区问答列表 >java - websocket 服务端onMessage()方法一操作数据库就报空指针异常

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

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

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


前端js处理:

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

  • 仅有的幸福
  • 仅有的幸福    2017-06-17 09:18:372楼

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

    +0添加回复

  • 回复
  • 黄舟
  • 黄舟    2017-06-17 09:18:371楼

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

    解决方法:

    使用ApplicationHelper获取所需的MessageService对象

    +0添加回复

  • 回复