2016-11-30 9 views
1

В настоящее время я изучаю Camel и имею в виду конкретный проект, для которого требуется Websphere MQ back-end, но я не могу использовать JMS-компоненты, так как мне нужно много заголовков, отличных от jms, таких как MQIIH.Могу ли я использовать Camel и WMQ без JMS?

Я нашел проект camel-wmq. Рекомендуемое решение? Это хорошо?

ответ

1

Предлагаемый способ работы с WMQ всегда был через компонент JMS, поскольку он позволяет безболезненно переключиться на других поставщиков, если возникнет такая необходимость.

Однако, если вам нужно использовать некоторую функцию, специфичную для WMQ, то мое предложение было бы расширить библиотеку camel-wmq - она ​​содержит только часть функций, поддерживаемых WMQ, и не поддерживает заголовки MQIIH, которые вам нужны. Добавление функциональности к компоненту, вероятно, потребует больше работы, чем solution Souciance Eqdam Rashti suggested, но это было бы более чистым решением и в большей степени соответствовало философии Camel. Кроме того, вы вернетесь к сообществу и, таким образом, поможете Camel стать лучшим инструментом для всех :)

Я также предлагаю вам пройти через IBM MQ discussions on the Camel's official user group mailing list и посмотреть, сможете ли вы что-нибудь спасти.

2

Вам не нужно использовать jms. У WMQ есть клиентский API. Просто загрузите банки клиента wmq и поместите их в свой проект и используйте их вместе с маршрутами Camel. Вероятно, вы поместите код клиента wmq в класс процессора или что-то подобное. Конечно, лучше всего протестировать, чтобы отправить сообщение в очередь вручную через RFHUTIL или что-то похожее на клиента, так что вы уверены, что настройка среды верна.