想用websocket实现新消息提醒功能,就比如a发了一篇文章然后有人回复了a,当a上线时出现消息提醒,如下图
后台的onMessage()方法中若是直接用session.getBasicRemote().sendText("haha");是可以正常运行的,可是一操作数据库就出了空指针异常..
前端js处理:
有遇到过相同问题的人吗?求告知..
仅有的幸福2017-06-17 09:18:37
这个空指针和 weosocket 无关,应该是你 messageService 实例的依赖注入有问题。
应该检查一下你的 MessageService 是否被 IOC 容器托管,即类上是否加了 @Service 或者 @Component 注解。
黄舟2017-06-17 09:18:37
开发过程中,某个未被spring托管的类(例如MessageController)想调用一个被spring托管的对象的方法(例如MessageService对象),如果我们像下面代码的方式去调用方法,则会出现空指针的异常。
解决方法:
使用ApplicationHelper获取所需的MessageService对象