Есть ли способ получить сообщение WMQ без использования MDB на JBoss?

Это может быть простой вопрос новичка, но я хотел бы прояснить его.

Невозможно получить сообщение WMQ без использования MDB на JBoss, используя XA-транзакцию контейнера. Я прав?

Я имею в виду, что мы можем поместить сообщение в MQ, используя AdminObject (com.ibm.mq.connector.outbound.MQQueueProxy), но только MessageListener доступен для использования сообщения очереди WMQ.

Мерси и Грасиас, и Данке, и Намасте, и Ксикси!

1 ответ

У меня нет опыта работы с JBoss, но обычная практика - использовать средство XA монитора / сервера приложений TX для координации менеджеров ресурсов. Средство XA сервера приложений должно внутренне использовать API Java / JMS XA WMQ, чтобы начать и зафиксировать / откатить транзакцию. В свою очередь менеджеры ресурсов реализуют спецификацию интерфейса X / Open XA или JTA в этом случае. Итак, я думаю, что вы правы.

MessageListener - это чистый JMS, и я не думаю, что он соответствует спецификации X / Open для координации менеджера ресурсов в двухфазной транзакции.

Если вы заинтересованы в том, чтобы заново изобрести колесо того, что MDB уже сделал, посмотрите документацию по WMQ JMS API. Обратите особое внимание на интерфейсы, начинающиеся с JmsXA... http://pic.dhe.ibm.com/infocenter/wmqv7/v7r5/index.jsp?topic=%2Fcom.ibm.mq.dev.doc%2Fq031500_.htm http://pic.dhe.ibm.com/infocenter/wmqv7/v7r5/index.jsp?topic=%2Fcom.ibm.mq.dev.doc%2Fq031500_.htm http://pic.dhe.ibm.com/infocenter/wmqv7/v7r5/index.jsp?topic=%2Fcom.ibm.mq.javadoc.doc%2FWMQJMSClasses%2Findex.html

Извините, у меня нет точного ответа, который вы ищете, но, по крайней мере, я могу указать направление MQ. Если вы добавите тег JMS, может быть, люди JMS могут помочь лучше. Надеюсь, поможет.

Другие вопросы по тегам