springboot整合websocket时,在向客户端发送消息时,后台报空指针

向客户端发送消息的代码如下

 public void sendMessage(String orderId,String message){
        try {
            if (StringUtils.isEmpty(orderId)) {
                throw new IOException("后台错误,请联系管理员");
            }
            WebSocketClient webSocketClient =new WebSocketClient();
            webSocketClient.setUri("ws://localhost:2000/websocket/1");
          //  WebSocketClient webSocketClient = webSocketMap.get(orderId);
            AdminOrderManagerVO adminOrderManagerVO = new AdminOrderManagerVO();
            adminOrderManagerVO.setSize(8);
            adminOrderManagerVO.setPage(1);
            IPage<OrderList> orderListIPage =
                    orderListService.adminSelectOrderListByPage(adminOrderManagerVO);

            String s = orderListIPage.toString();
            if(webSocketClient!=null){
                webSocketClient.getSession().getBasicRemote().sendText(s);
            }

        } catch (IOException e) {
            e.printStackTrace();
            throw new RuntimeException(e.getMessage());
        }
    }

在Page orderListIPage = orderListService.adminSelectOrderListByPage(adminOrderManagerVO);这一行中报错,而且无法进入adminSelectOrderListByPage这个方法。报错如下:

2022-04-04 09:54:18,764 -用户错误:1649036931800158,原因:Cannot invoke "com.xjc.leleservice.OrderListService.adminSelectOrderListByPage(com.xjc.vo.AdminOrderManagerVO)" because the return value of "com.xjc.leleservice.impl.WebSocketService._jr$ig$orderListService(Object)" is null
2022-04-04 09:54:18,766 -----------------------------------------------------------------------------
2022-04-04 09:54:18,766 -1649036931800158用户退出,当前在线人数为:2
2022-04-04 09:54:18,766 -收到新的订单:1649036931800158,报文:订单来了
java.lang.NullPointerException: Cannot invoke "com.xjc.leleservice.OrderListService.adminSelectOrderListByPage(com.xjc.vo.AdminOrderManagerVO)" because the return value of "com.xjc.leleservice.impl.WebSocketService._jr$ig$orderListService(Object)" is null
    at com.xjc.leleservice.impl.WebSocketService.sendMessage(WebSocketService.java:134)
    at com.xjc.leleservice.impl.WebSocketService.onOpen(WebSocketService.java:61)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
    at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.base/java.lang.reflect.Method.invoke(Method.java:568)
    at org.apache.tomcat.websocket.pojo.PojoEndpointBase.doOnOpen(PojoEndpointBase.java:69)
    at org.apache.tomcat.websocket.pojo.PojoEndpointServer.onOpen(PojoEndpointServer.java:48)
    at org.apache.tomcat.websocket.server.WsHttpUpgradeHandler.init(WsHttpUpgradeHandler.java:136)
    at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:942)
    at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1722)
    at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
    at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191)
    at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659)
    at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
    at java.base/java.lang.Thread.run(Thread.java:833)


这个adminrderMangerVO中有值,如下图

img

这个报错如何解决

进那个方法看看方法里用了哪些数据,你的VO里只有page和size,其他都为空