相关疑难解决方法(0)

禁止在SimpMessagingTemplate中的convertAndSendToUser方法中广播

我正在使用Spring websocket实现.要向客户端发送消息,有两种方法:

1)使用@SendToUser注释
2)使用convertAndSendToUser方法SimpMessagingTemplate

@SendToUser获取一个布尔参数broadcast,如果设置为false,则将该消息发布到当前会话.有没有办法让我有这种行为SimpMessagingTemplate.

spring-websocket

8
推荐指数
1
解决办法
2665
查看次数

Spring STOMP从应用程序的任何位置发送消息

我正在构建一个使用Stomp通过websockets代理消息的应用程序.我试图从服务器向客户端发送消息,而无需来自应用程序的任何位置的请求.我在网上找到两个单独的选择,用于从应用程序的任何位置发送消息

第一个是在Websocket文档中找到的.第20.4.5节:

@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);
    }

}
Run Code Online (Sandbox Code Playgroud)

第二个是由一位Spring Blogger撰写的指南:

@Controller
public class GreetingController {

  @Autowired
  private SimpMessagingTemplate template;


  @RequestMapping(value="/greeting", method=POST)
  public void greet(String greeting) {
    String text = "[" + getTimeStamp() + "]:" + greeting;
    this.template.convertAndSend("/topic/greeting", text);
  }

}
Run Code Online (Sandbox Code Playgroud)

两者非常相似.第一个覆盖默认构造函数,不会自动装配模板初始化.第二个不会创建新的构造函数,但会自动装配模板初始化.我的第一个问题是这两个行为是否相同?

更紧迫的是我无法从任何地方调用"问候"方法.我尝试过几种不同的方式. …

java spring annotations stomp autowired

5
推荐指数
1
解决办法
5664
查看次数

标签 统计

annotations ×1

autowired ×1

java ×1

spring ×1

spring-websocket ×1

stomp ×1