Как установить JMS_IBM_MQMD_ACCOUNTINGTOKEN в JMSMessage

После обработки сообщения мне нужно установить токен учета в msg. Как мне установить его в исходящем сообщении. Я пробовал следующее, и это не работает

msg.setObjectProperty(JmsConstants.JMS_IBM_MQMD_ACCOUNTINGTOKEN,value)

где набор значений — это byte[]. Но когда я вижу сообщение, AccountingToken не устанавливается.

Есть ли что-то, что мне здесь не хватает?


person Pratik Shelar    schedule 09.06.2014    source источник
comment
Как насчет ответа ниже? Вы решили проблему?   -  person Pino    schedule 10.06.2014


Ответы (2)


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

((JmsDestination) dest).setBooleanProperty(WMQConstants.WMQ_MQMD_WRITE_ENABLED, true);   

После установки вышеуказанного значения учетный токен был доступен.

person Pratik Shelar    schedule 11.06.2014

Из Центр знаний IBM:

Для некоторых свойств необходимо также установить свойство WMQ_MQMD_MESSAGE_CONTEXT для объекта Destination. (...)
Для следующих свойств необходимо, чтобы для параметра WMQ_MQMD_MESSAGE_CONTEXT было установлено значение WMQ_MDCTX_SET_IDENTITY_CONTEXT или WMQ_MDCTX_SET_ALL_CONTEXT:

JMS_IBM_MQMD_UserIdentifier
JMS_IBM_MQMD_AccountingToken
JMS_IBM_MQMD_ApplIdentityData
person Pino    schedule 09.06.2014