activeMQ无法发送topic消息
我在学习activeMQ的时候发现一个很奇怪的问题,发送queue消息时能正常发送和接收,但是如果我换成topic的话,一直收不到消息,也不报错,开始不知道为什么,后来用BrokerService.getAdminView().getTotalMessageCount(),监测发现queue的时候有消息数目,但topic没有,不知道为什么,贴上代码先吧,求大神解释!!!!!
public static void send() { Connection conn = null; try { conn = factory.createConnection(); Session session = conn.createSession(false, Session.AUTO_ACKNOWLEDGE); Destination des = null; // Destination //des = session.createQueue("myQueue"); des = session.createTopic("topictest.messages"); conn.start(); MessageProducer producer = session.createProducer(des); producer.setDeliveryMode(DeliveryMode.PERSISTENT); TextMessage msg = session.createTextMessage(); msg.setText("测试"); producer.send(msg); } catch (JMSException e) { e.printStackTrace(); } finally { System.out.println("-----消息发送完毕!"); if (conn != null) { try { conn.stop(); conn.close(); } catch (JMSException e) { e.printStackTrace(); } } } }
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(9)
。。。这个我的也可以啊,就是把queue改成topic就会出问题,郁闷
回复
呵呵
回复
不好意思。这是刚开始学习,我看了你代码看了半天,开始一看是一样的啊,啥情况呢?再一想,程序流转的问题,唉。。。。
我们一般都用queue
这个我有啊,问题是没发出去,而不是收不到,请问能不能给你测试成功的demo?谢谢
改成监听试试,topic本来就是发布/订阅模型
请问你的意思是使用TopicSession,然后用session.createPublisher()吗?
改成监听试试,topic本来就是发布/订阅模型