【发布时间】:2015-07-14 18:25:19
【问题描述】:
我正在编写一个独立的 main 方法,它调用一个生产者(将数据推送到队列中),然后调用一个持续监听主题的消费者。
我已经覆盖了 onMessage 并且我能够从队列中获取消息,但是我无法将消息返回给调用方法。
其实我是想把消息带到浏览器上,所以想试试能不能把它至少带到main。
请帮忙;
class TextMessageListener implements MessageListener {
String msgData;
public String getMsgData() {
return msgData;
}
public void setMsgData(String msgData) {
this.msgData = msgData;
}
public void onMessage(Message message) {
try {
if (message instanceof TextMessage) {
TextMessage textMessage = (TextMessage) message;
System.out.println("Received message in ::" + textMessage.getText() + " '");
setMsgData(textMessage.getText());
}
} catch (JMSException e) {
System.out.println("Caught:" + e);
e.printStackTrace();
}
}
}
【问题讨论】:
-
使用独立的主要方法,你是如何连接消息队列的。可能这个链接可以帮助你novell.com/documentation/extend5/Docs/help/MP/jms/tutorial
-
@premraj,我正在尝试使用 setMsgData(textMessage.getText());然后我试图调用 getter 来获取值,但不幸的是 getter 没有被调用。
-
如果您显示应该调用 getter 的代码会有所帮助,因为这似乎是无法正常工作的部分。
-
问题不清楚,能不能详细点?
-
@GionJh,我正在覆盖 MessageListener,同时从队列中读取。能够打印日志中的值,但无法返回相同的调用函数。
标签: java jms listener activemq