Spring+stomp+websocket使用SimpMessagingTemplate推送消息,客户端订阅成功但收不到消息

qq_32760205 2017-04-18 11:18:27

import org.springframework.messaging.simp.SimpMessagingTemplate;
import org.springframework.stereotype.Component;

import java.util.Date;


/**
* Created by WD on 2017/4/17.
*/
@Component
public class TestJob {

private static final String TOPIC_REQUIRE= "/topic/require";
private static final String TOPIC_ONE= "/topic/one";
private static final String TOPIC_TWO= "/topic/two";
private static final String TOPIC_THREE= "/topic/three";

@Autowired
private SimpMessagingTemplate messagingTemplate;

/**
* 测试定时任务
*/
public void test() {
try {
messagingTemplate.convertAndSend(TOPIC_REQUIRE, new Date());
Double a = Math.random();
System.out.println("定时任务" + a);
}catch(Exception e){
System.out.println("webSocket推送异常");
}
}
}


  function webSocketConnect() {
//webSocket连接
//生成websocket对象
websocket = new SockJS('${basePath}/websocket');
//获得满足websocket定义的对象
stompClient = Stomp.over(websocket);
//连接服务端
debugger;
stompClient.connect({}, function (frame) {
//订阅
stompClient.subscribe("/topic/require", function (response) {
var require = response.body;
console.log(require);
});
});
}


<<< CONNECTED
version:1.1
heart-beat:0,0
user-name:gjjzb

connected to server undefined

stomp.js:130 >>> SUBSCRIBE
id:sub-0
destination:/topic/require


...全文
2991 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
老狼的诗 2019-07-11
  • 打赏
  • 举报
回复
@Component
@EnableScheduling
public class TestJob {
云舒丶 2018-12-20
  • 打赏
  • 举报
回复
你要发出你的服务端配置
didoleo 2018-12-20
  • 打赏
  • 举报
回复
我也遇到同样的问题,发现好像 SimpMessagingTemplate.convertAndSend 方法,只有在带有@MessageMapping注释的方法里被调用,才会让客户端订阅成功,在其他的方法里就不行,这个跟书上说的 “在应用的任何地方”矛盾,不知什么缘故
小花荣 2018-01-16
  • 打赏
  • 举报
回复
在websocket的配置类中是否定义了域,websocket只有在定义的域上才能进行通讯:configureMessageBroker(){ config.enableSimpleBroker("/huabei","/airport");}
小小鱼来喽 2017-11-22
  • 打赏
  • 举报
回复
我也遇到了类似的问题,我是在activemq中的接收器里进行websocket的消息再发送,前台就收不到;但在controller中进行测试,却可以发送。 你现在解决了吗?
冲啊浪啊 2017-05-17
  • 打赏
  • 举报
回复
楼主,最近我也是遇到这个问题,只要使用spring继承得RabbitMq rabbitTemplate客户端就接收不到。请问你这个问题最后怎么解决得?

81,114

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧