|
RSS Feed - WebSphere MQ Support
|
RSS Feed - Message Broker Support
|
 |
|
problem setting mcd folder in MQRFH2 header |
« View previous topic :: View next topic » |
Author |
Message
|
JohnMetcalfe |
Posted: Thu Jan 06, 2005 10:30 am Post subject: problem setting mcd folder in MQRFH2 header |
|
|
 Apprentice
Joined: 02 Apr 2004 Posts: 40 Location: Edinburgh, Scotland
|
Hi all,
I've a flow that reads & process an XML message, but uses the BLOB message domain. The flow adds an RFH2 header. As the message is actually XML, I want to set the <msd> element in the <mcd> folder to be XML. I need to do this because other multiple flows read the message (we use pub/sub), they are expecting XML (and specify this in their input nodes) but the setting in this folder determines the default parser WMQI uses to parse the message.
I've inserted code in the flow where I create the MQRFH2 header as below
Code: |
SET OutputRoot.MQRFH2.mcd.Msd = 'XML'; |
this seems to make no difference. WMQI seems to be overwriding the setting. The message output from the flow still has the mcd folder set as below:
<mcd>
<Msd>
none
<\Msd>
<\mcd>
Before you all say the obvious, I don't want to use a ResetContentDescriptor node as the message can be quite large and this will force a unrequired parse of the message payload, which is pretty memory hungry.
Is there anyway of forcing WMQI to not overwride my settings of the mcd folder without using a RestContentDescriptor?. Help! |
|
Back to top |
|
 |
JT |
Posted: Thu Jan 06, 2005 1:56 pm Post subject: |
|
|
Padawan
Joined: 27 Mar 2003 Posts: 1564 Location: Hartford, CT.
|
Quote: |
The <mcd> folder can contain the following elements that describe the structure of the message data in a WebSphere MQ message. They are all character strings, and are case-sensitive. |
Try:
Code: |
SET OutputRoot.MQRFH2.mcd.Msd = 'xml'; |
|
|
Back to top |
|
 |
Tibor |
Posted: Fri Jan 07, 2005 12:05 am Post subject: |
|
|
 Grand Master
Joined: 20 May 2001 Posts: 1033 Location: Hungary
|
Quote: |
Is there anyway of forcing WMQI to not overwride my settings of the mcd folder without using a RestContentDescriptor?. Help! |
When the input node waits a BLOB message (Default/Message Domain = BLOB) then you must use an RCD node.
JT,
The mcd folder is case-sensitive but WMQI handles the Msd values in different format ('XML' or 'xml') without any problem. (BLOB/blob, MRM/mrm, too)
Tibor |
|
Back to top |
|
 |
JT |
Posted: Fri Jan 07, 2005 6:11 am Post subject: |
|
|
Padawan
Joined: 27 Mar 2003 Posts: 1564 Location: Hartford, CT.
|
|
Back to top |
|
 |
JohnMetcalfe |
Posted: Fri Jan 07, 2005 7:08 am Post subject: |
|
|
 Apprentice
Joined: 02 Apr 2004 Posts: 40 Location: Edinburgh, Scotland
|
Thanks for the input.
There seems to be no obvious way round this, so we have inserted RCD nodes in the subscriber flows.
I have to say the way it is working is not ideal - if I explicitly specify the XML domain in the MQInput node, I think I'd prefer WMQI to take this setting in preference to that specified on the MQRFH2 mcd folder. As I see in another thread on this topic, this behaviour may lead to contact admin issues when using the MRM domain - then the mcd folder would contain the MRM message set details - see http://www.mqseries.net/phpBB2/viewtopic.php?t=5233&highlight=mcd |
|
Back to top |
|
 |
prasadpav |
Posted: Tue Jan 11, 2005 6:43 am Post subject: |
|
|
 Centurion
Joined: 03 Oct 2004 Posts: 142
|
Hi,
I never tried this before, but, It is mentioned in the message broker manual (manual on message flows.pdf, Page 613, topic on Properties tree) that you can set the values for message domain, message set..etc in both properties tree and MQRFH2 mcd folder. For every node in the message flow, broker will make a check whether or not the values in the properties tree matches up with values in MQRFH2 header. If they dont match then broker will override the values in MQRFH2 header with values from Properties tree. I think this is the reason why your MQRFH2 header values are being replaced. Try setting the message domain both in Properties tree and MQRFH2 header, probably this would work. (Or) just set only in Properties tree.
-Prasad |
|
Back to top |
|
 |
Tibor |
Posted: Wed Jan 12, 2005 5:42 am Post subject: |
|
|
 Grand Master
Joined: 20 May 2001 Posts: 1033 Location: Hungary
|
Prasad,
This way won't work, we'd alread tried it.
Properties.MessageSet can set by an RCD node but MQRFH2.mcd.Msd don't get this value automatically.
Tibor |
|
Back to top |
|
 |
|
|
 |
|
Page 1 of 1 |
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|
|
|