Отправляйте сообщения в IBM MQ с помощью 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>

Когда я пытаюсь опубликовать сообщение, я получаю следующее исключение

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

Ожидает ли метод post ответ от QUEUE, чтобы он мог ответить клиенту отдыха? Мне нужно, чтобы почтовая служба ответила 200, если сообщение успешно отправлено в QUEUE, в противном случае - 500. Как решить эту проблему?


person vineeth kumar    schedule 14.02.2020    source источник
comment
Я также пытаюсь реализовать IBM MQ Producer, если у вас есть образец кода в Github, не могли бы вы связать   -  person Srikanth Janapati    schedule 05.07.2020


Ответы (1)


Шаблон вашего обмена - InOut, так что это поведение по умолчанию для вашего производителя jms. Попробуйте изменить его для конкретной конечной точки следующим образом:

<to uri="ibmmq:QUEUE.NAME" pattern="InOnly"/>
person c0ld    schedule 14.02.2020