【发布时间】:2020-01-01 08:18:05
【问题描述】:
我有一个要求:
队列中的消息,比如 A,需要由两个不同的应用程序使用。我正在尝试实现一个 MDB 来监听该队列并将该消息发布到应用程序可以使用的另一个主题。
- 有可能吗?
- 它是否可以作为 jboss 中的某些配置随时使用..我是在重新发明轮子吗?
- 对此的任何帮助..
代码:
@MessageDriven(activationConfig = {
@ActivationConfigProperty(propertyName = "destinationLookup", propertyValue = "queue/test.queue"),
@ActivationConfigProperty(propertyName = "destinationType", propertyValue = "javax.jms.Queue") })
public class MyListener implements MessageListener {
private JmsTemplate jmsTemplate;
public MyListener(JmsTemplate jmsTemplate) {
this.jmsTemplate = jmsTemplate;
}
public void onMessage(Message message) {
System.out.println("Message received");
// TextMessage textMessage = (TextMessage) message;
publishMessage(message);
System.out.println("Message re-published");
}
提前致谢。
【问题讨论】:
-
1.是的,可能。我已经实施了。但是面临一个问题:通过 MDB 接收到的消息并且它没有发布到主题。但没有错误。任何帮助将非常感激。代码已更新。
-
您如何确认没有消息发布到该主题?发送消息时,该主题是否有订阅者?
-
您的 publishMessage 源代码是什么?你的 JMS 提供者是什么?许多 JMS 实现具有将队列和主题“桥接”到其他主题的配置选项。例如 TIBCO、Solace、IBM MQ、...
标签: java jms message-queue jboss-mdb