【发布时间】:2014-05-24 13:13:40
【问题描述】:
与最新的 Spring 4 STOMP 和 SockJS 教程一样,我们发现了以下类型的 RequestMapping:
Homecontroller.java
@MessageMapping("/hello")
@SendTo("/topic/greetings")
public Greeting greeting(HelloMessage message) throws Exception {
Thread.sleep(3000); // simulated delay
return new Greeting("Hello, " + message.getName() + "!");
}
现在我尝试通过修改这个requestmapping来实现多通道支持:
@MessageMapping("/hello/{id}")
@SendTo("/topic/greetings/{id}")
public Greeting greetingMultichannel(HelloMessage message) throws Exception {
this.info();
Thread.sleep(300); // simulated delay
return new Greeting(" Hello, " + message.getName() + "!");
}
MessageMapping 不起作用,sendTo 不会返回到指定的 URL。 虽然 我确实订阅了正确的频道,并且消息没有出现问题,如本文所示
调试日志:
正在打开 Web Socket... stomp.js:130 Web Socket 已打开... stomp.js:130
连接 接受版本:1.1,1.0 心跳:10000,10000
stomp.js:130
stomp.js:130 连接到服务器 undefined stomp.js:130 已连接:已连接 版本:1.1 心跳:0,0
(索引):23
订阅 编号:sub-0 目的地:/topic/greetings/1
stomp.js:130
发送 目的地:/app/hello/1 内容长度:18
{"name":"texttext"}
应该有回应,但没有任何回应..
有人可以看到我在这里缺少什么吗?
干杯, 海因里希
【问题讨论】: