使用 REST API 向 IBM MQ 生成消息。阿帕奇骆驼

Produce messages to IBM MQ using REST API. Apache Camel

我必须通过点击休息服务向 IBM MQ 发送消息。下面是我想出的代码,使用 Camel XML DSL.

<rest path="/basePath">
    <post uri="/path" consumes="application/xml" produces="application/xml">
        <to uri="ibmmq:QUEUE.NAME"/>
    </post>
</rest>

当我尝试 post 消息时,出现以下异常

org.apache.camel.RuntimeExchangeException: Failed to resolve replyTo destination on the exchange

post 方法是否需要从 QUEUE 返回响应,以便它可以响应 rest 客户端? 如果消息成功生成到 QUEUE,我只需要 post 服务回复 200,否则回复 500。 如何解决这个问题?

您的交换模式是 InOut,因此这是您的 jms 生产者的默认行为。尝试像这样针对特定端点更改它:

<to uri="ibmmq:QUEUE.NAME" pattern="InOnly"/>