【问题标题】:Mule JMS request-responseMule JMS 请求-响应
【发布时间】:2014-08-15 08:51:18
【问题描述】:

我有一个使用 JMS 入站端点的 Mule 流 - 端点是请求响应 - 当我运行发送 ObjectMessage 的测试时,请求会到达后续转换器,我可以在处理周期结束时看到响应.

但是,当我从外部 Java 客户端向队列提交 JMS 请求时出现问题 - JMS 消息被提交,但响应负载始终为空 - 我在我的场景下面包含了一个代码 sn-p

p>

谢谢

使用以下 Active MQ 测试类解决了该问题。

 connectionFactory = new ActiveMQConnectionFactory(connectionUri);
 connection = connectionFactory.createConnection();
 session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE);
 replyQueue = session.createQueue("REPLY.Q");
 requestQueue = session.createQueue("REQUEST.Q");
 messageConsumer = session.createConsumer(replyQueue);
 messageConsumer.setMessageListener(this);
 connection.start();

 ObjectMessage message = session.createObjectMessage();
 message.setObject(getCompositeEntity());
 message.setJMSReplyTo(replyQueue);
 String randomStr = UUID.randomUUID().toString();
 message.setJMSCorrelationID(randomStr);
 MessageProducer publisher = session.createProducer(requestQueue);
 publisher.send(message);

【问题讨论】:

    标签: jms mule


    【解决方案1】:

    您从外部客户端发布的 JMS 消息是否将其 JMSReplyTo 属性正确设置为队列(永久或临时)?

    【讨论】:

    • 是的,这就是为什么我有点惊讶外部客户端没有收到回复消息
    • 我想我已经解决了我的问题并且它似乎正在工作,感谢您的快速响应。也是一本关于骡子的好书,从中学到了很多。
    • 谢谢,但问题是什么?
    • 发布了我上面使用的解决方案,谢谢
    猜你喜欢
    • 2014-02-14
    • 1970-01-01
    • 1970-01-01
    • 2016-05-13
    • 2011-05-05
    • 1970-01-01
    • 2014-11-08
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多