Mapping from property names to MQRFH2 folder and element names
Overview of the differences between property names and element names in the MQRFH2 header.
When using any of the defined APIs that ultimately generate MQRFH2 headers, in order to specify message properties (for example, MQ JMS), the property name is not necessarily the element name in the MQRFH2 folder.
Property name | MQRFH2 folder name | MQRFH2 element name |
---|---|---|
JMSDestination |
jms |
Dst |
JMSType |
mcd |
Type , Set , Fmt |
xxx (user defined, where xxx does not begin with JMS) |
usr |
xxx |
JMSDestination
property this maps to the Dst
element in the <jms>
folder.Property name | MQRFH2 folder name | MQRFH2 group name | MQRFH2 element name |
---|---|---|---|
<Property> |
<usr> |
n/a | <Property> |
<folder> .<Property> |
<folder> |
n/a | <Property> |
<folder> .<group> .<Property> |
<folder> |
<group> |
<Property> |
For example, when a IBM WebSphere MQ JMS application attempts to access the Property1
property, this maps to the Property1
element in
the <usr>
folder. The wmq.Property2
property maps to the Property2
property in the <wmq>
folder.
If the property name contains more than one . character, the MQRFH2 element name used is the one following the final . character, and MQRFH2 groups are used to form a hierarchy; nested MQRFH2 groups are permitted.
The JMS header and provider-specific properties that are contained
in an MQRFH2 in the <mcd>
, <jms>
, and <mqext>
folders are accessed by a IBM WebSphere MQ application using the short names defined in Using WebSphere
MQ classes for Java.
JMS user-defined properties are accessed from the <usr>
folder. An IBM WebSphere MQ application can
use the <usr>
folder for its application properties
if it is acceptable for the property to appear to JMS applications
as one of its user-defined properties.
If it is not acceptable, choose another folder; the <wmq_usr>
folder is provided as a standard location for such non-JMS properties.
- The folder might already be in use, or might be used in the future, by another application providing undefined access to properties contained inside it; see Property names for the suggested naming convention for property names.
- The properties are not accessible to previous versions of the IBM WebSphere MQ classes for JMS or XMS client that can only access the
<usr>
folder for user-defined properties - The folder must be marked with the attribute
content
with the value set toproperties
, for example,content='properties'
.MQSETMP - Set message property automatically adds this attribute as required. This attribute must not be added to any of the IBM-defined folders, for example,
<jms>
and<usr>
. Doing so, causes the message to be rejected by the IBM WebSphere MQ classes for JMS client before Version 7.0. with aMessageFormatException
.
Because the <usr>
folder is the default location
for properties of the <Property>
syntax, a IBM WebSphere MQ application and a JMS application to access the same
user-defined property value using the same name.
Reserved folder names
Root.Property1
does not access a valid
property because Root
is reserved. The following
list contains reserved folder names:- Root
- Body
- Properties
- Environment
- LocalEnvironment
- DestinationList
- ExceptionList
- InputBody
- InputRoot
- InputProperties
- InputLocalEnvironment
- InputDestinationList
- InputExceptionList
- OutputRoot
- OutputLocalEnvironment
- OutputDestinationList
- OutputExceptionList