使用WMQ API时是否可以手动设置JMS属性?

时间:2012-07-26 11:52:52

标签: java .net jms ibm-mq

我在Java中使用传统的(com.ibm.mq.jar)MQ应用程序进行测试。现在我需要使用该应用程序向JMS发送一些消息。当我尝试在MQ消息上设置任何JMS属性时,例如:

message.setStringProperty("JMSDestination", "queue:///" + queueName);

我总是得到错误:2471 - MQRC_PROPERTY_NOT_AVAILABLE。如果我只是从属性名称中删除JMS,它就有效。

是否可以直接在MQMessage上设置JMS属性?在MQ级别上执行此操作的正确方法是什么?

顺便说一下。我在.NET中有相同的应用程序,可以通过这种方式设置JMS属性,所以我只是尝试在Java中使用相同的代码。

1 个答案:

答案 0 :(得分:2)

不允许手动执行此操作。请使用JMS API设置JMS属性。

解释了MQ属性的限制here

但有一件事是在该文档页面中有所涉及,

  

MQPUT调用不保证直接指定为MQRFH2元素的属性名称。

你或许可以在短期内解决这个问题。但是,似乎无法保证不会直接设置MQRFH2元素。