Tag: stomp

无法自动assembly。 找不到SimpMessagingTemplate类型的bean

我基本上是按照文档中提供的指南在Spring中配置Websockets。 我正在尝试从服务器向客户端发送消息,如 “ 从任何地方发送消息 ”一节中所述 在示例之后,您可以自动assembly一个名为SimpMessagingTemplate的类 @Controller public class GreetingController { private SimpMessagingTemplate template; @Autowired public GreetingController(SimpMessagingTemplate template) { this.template = template; } @RequestMapping(value=”/greetings”, method=POST) public void greet(String greeting) { String text = “[” + getTimestamp() + “]:” + greeting; this.template.convertAndSend(“/topic/greetings”, text); } } 但是,我当前的项目找不到bean“SimpMessagingTemplate”。 (Intellij:’无法自动assembly。没有发现SimpMessagingTemplate类型的bean’。 我在互联网上查了几个例子,但是我找不到如何让Spring创建一个SimpMessagingTemplate实例。 我怎样才能自动assembly它? 编辑: 我决定发送更多背景信息。 这是我目前的websocket配置: Websocket适用于此控制器 @Controller public class […]

如何使用Sping Websocket在特定的userName上订阅+从方法中获取通知,分别来自BOTH @RequestMapping和@MessageMapping?

我正在实施通知系统。 并希望在用户登录时初始化Socket连接,并向他显示他的通知,以及是否发生某些事件。 以下是我项目的代码片段 web_socket.js var stompClient = null; function connect( temp, context_path ) { var socket = new SockJS( “/ContextPath/websock?nsec=”+temp ); stompClient = Stomp.over(socket); console.log( stompClient ); stompClient.connect({userName: “123456”}, function( frame ){ console.log( “Connected :- “+frame ); stompClient.subscribe(“/user/queue/notifications”, function( notifications ) { notifications_display( notifications.body ); }); stompClient.subscribe(“/user/queue/errors”, function( error ) { console.log( “Error :- “+error […]

哪个“user”来自convertAndSendToUser在SockJS + Spring Websocket中工作?

我想了解convertAndSendToUser如何在Spring SockJS + Websocket框架中工作。 在客户端,我们将连接为 stompClient.connect(login, password, callback()) 这将导致连接请求与登录和密码的“Stomp凭证”,例如,如果我们处理SessionConnectEvent http://www.sergialmar.com/2014/03/detect-websocket-connects-and-disconnects-in -spring-4 / 但我仍然不清楚这是否是服务器端向队列发送操作的“用户”: simpMessagingTemplate.convertAndSendToUser(username, “/queue/reply”, message); 我能得到的最接近的是阅读这个post在Spring Websocket上向特定用户发送消息 ,由Thanh Nguyen Van回答,但目前还不清楚。 基本上我需要做的是订阅一些客户端到同一主题,但在服务器上,发送不同的数据。 客户可以提供用户标识符。

Spring WebSocket @SendToSession:向特定会话发送消息

是否可以向特定会话发送消息? 我在客户端和Spring servlet之间有一个未经身份validation的websocket。 当异步作业结束时,我需要向特定连接发送未经请求的消息。 @Controller public class WebsocketTest { @Autowired public SimpMessageSendingOperations messagingTemplate; ExecutorService executor = Executors.newSingleThreadExecutor(); @MessageMapping(“/start”) public void start(SimpMessageHeaderAccessor accessor) throws Exception { String applicantId=accessor.getSessionId(); executor.submit(() -> { //… slow job jobEnd(applicantId); }); } public void jobEnd(String sessionId){ messagingTemplate.convertAndSend(“/queue/jobend”); //how to send only to that session? } } 正如您在此代码中看到的,客户端可以启动异步作业,当它完成时,它需要结束消息。 显然,我只需要向申请人发送信息,而不是向所有人广播。 拥有@SendToSession注释或messagingTemplate.convertAndSendToSession方法会很棒。 UPDATE 我试过这个: […]