2016-05-18 3 views
0

Я использую Spring jms для отправки сообщений jms в websphere mq с использованием целевого клиента как 1 в целевом распознавателе. Однако это приводит к отбрасыванию всех настраиваемых заголовков, которые я установил в сообщении jms. Когда я устанавливаю целевого клиента как 0, он отлично работает. Мне нужно сохранить его по 1 по какой-то другой причине. Может кто-нибудь объяснить, что здесь происходит, и возможное решение. Благодарю.Использование targetclient 1 вызывает падение заголовков jms

ответ

1

В заголовках MQ JMS реализованы как свойства в заголовке MQ RFH2 сообщения. Указав целевого клиента WMQ_TARGET_DEST_MQ (1), вы поручаете клиенту MQ JMS сбрасывать заголовок RFH2. Что в вашем случае означает, что вы теряете свои собственные заголовки. Поэтому, устанавливая WMQ_TARGET_DEST_MQ, вы по сути отказываетесь от этой функции.

Вам либо необходимо использовать WMQ_TARGET_DEST_JMS (0), который, как вы знаете, работает, или найти другой способ передачи данных в ваших пользовательских заголовках в принимающее приложение.

Один из вариантов, если вы хотите продолжить работу с WMQ_TARGET_DEST_MQ, состоит в том, чтобы включить ваши собственные заголовки в тело сообщения как пары имя/значение - вам просто нужно убедиться, что принимающее приложение может его понять.

+0

Как вы думаете, можно добавить значение заголовка String в папку «usr», сохранив WMQ_TARGET_DEST_MQ ?? – Sudheera