Author |
Message
|
schroederms |
Posted: Wed Mar 16, 2005 11:26 am Post subject: WBIMB XML to MRM question ... |
|
|
 Disciple
Joined: 21 Jul 2003 Posts: 169 Location: IA
|
I've always worked with XML in all the flows we've created here. Now I'm wanting to create a message that has five columns for output.
Doing a little reading, I created a cobol layout and create a message set. Used that in my ESQL and can see my five fields in the trace (GREEN).
However when the message is gettng placed on the output queue it is failing with a 'Invalid Wire format retreived. '(RED).
Tried to do a resetcontentdescriptor after the compute, before the output queue, with no success.
What am I doing wrong ?
Thanks.
(0x01000000):MQMD = (
(0x03000000):SourceQueue = 'SECADMIN.TEST'
(0x03000000):Transactional = TRUE
(0x03000000):Encoding = 546
(0x03000000):CodedCharSetId = 437
(0x03000000):Format = 'MQSTR '
(0x03000000):Version = 2
(0x03000000):Report = 0
(0x03000000):MsgType = 8
(0x03000000):Expiry = -1
(0x03000000):Feedback = 0
(0x03000000):Priority = 0
(0x03000000):Persistence = 0
(0x03000000):MsgId = X'414d5120534331513030322020202020420247d520038804'
(0x03000000):CorrelId = X'000000000000000000000000000000000000000000000000'
(0x03000000):BackoutCount = 0
(0x03000000):ReplyToQ = ' '
(0x03000000):ReplyToQMgr = 'SC1Q002 '
(0x03000000):UserIdentifier = 'mqm '
(0x03000000):AccountingToken = X'16010515000000404e9687adc72aadea97f6399e42000000000000000000000b'
(0x03000000):ApplIdentityData = ' '
(0x03000000):PutApplType = 11
(0x03000000):PutApplName = ' '
(0x03000000):PutDate = DATE '2005-03-16'
(0x03000000):PutTime = GMTTIME '18:57:05.550'
(0x03000000):ApplOriginData = ' '
(0x03000000):GroupId = X'000000000000000000000000000000000000000000000000'
(0x03000000):MsgSeqNumber = 1
(0x03000000):Offset = 0
(0x03000000):MsgFlags = 0
(0x03000000):OriginalLength = -1
)
(0x01000021):MRM = (
(0x03000000):REQUESTOR = 'MIKE'
(0x03000000):ID = 'myID'
(0x03000000):PWD = 'myPWD'
(0x03000000):RTN_CODE = '0'
(0x03000000):RTN_DESC = 'Worked!'
)
)
(
(0x01000000):RecoverableException = (
(0x03000000):File = '/build/S500_P/src/DataFlowEngine/ImbMqOutputNode.cpp'
(0x03000000):Line = 751
(0x03000000):Function = 'ImbMqOutputNode::evaluate'
(0x03000000):Type = 'ComIbmMQOutputNode'
(0x03000000):Name = 'SECADMIN_TEST#FCMComposite_1_5'
(0x03000000):Label = 'SECADMIN_TEST.MQOutput'
(0x03000000):Text = 'Caught exception and rethrowing'
(0x03000000):Catalog = 'BIPv500'
(0x03000000):Severity = 3
(0x03000000):Number = 2230
(0x01000000):ParserException = (
(0x03000000):File = '/build/S500_P/src/MTI/MTIforBroker/MtiImbParser2/MtiImbSyntaxElement.cpp'
(0x03000000):Line = 415
(0x03000000):Function = 'CpContext::loadWorker'
(0x03000000):Type = ''
(0x03000000):Name = ''
(0x03000000):Label = ''
(0x03000000):Text = 'Invalid Wire format retreived. '
(0x03000000):Catalog = 'BIPv500'
(0x03000000):Severity = 3
(0x03000000):Number = 5136
(0x01000000):Insert = (
(0x03000000):Type = 5
(0x03000000):Text = ''
)
)
)
) |
|
Back to top |
|
 |
jefflowrey |
Posted: Wed Mar 16, 2005 11:38 am Post subject: |
|
|
Grand Poobah
Joined: 16 Oct 2002 Posts: 19981
|
What are the Properties of the message before the MQOutput node? _________________ I am *not* the model of the modern major general. |
|
Back to top |
|
 |
schroederms |
Posted: Wed Mar 16, 2005 12:25 pm Post subject: |
|
|
 Disciple
Joined: 21 Jul 2003 Posts: 169 Location: IA
|
Here is what I see in the trace file(RED).
But I do do this in the compute node before the outputnode:
SET OutputRoot.Properties = InputRoot.Properties;
SET OutputRoot.MQMD = InputRoot.MQMD;
(
(0x01000000):Properties = (
(0x03000000):MessageSet = ''
(0x03000000):MessageType = ''
(0x03000000):MessageFormat = ''
(0x03000000):Encoding = 546
(0x03000000):CodedCharSetId = 437
(0x03000000):Transactional = TRUE
(0x03000000):Persistence = FALSE
(0x03000000):CreationTime = GMTTIMESTAMP '2005-03-16 18:57:05.550'
(0x03000000):ExpirationTime = -1
(0x03000000):Priority = 0
(0x03000000):ReplyIdentifier = X'000000000000000000000000000000000000000000000000'
(0x03000000):ReplyProtocol = 'MQ'
(0x03000000):Topic = NULL
) |
|
Back to top |
|
 |
jefflowrey |
Posted: Wed Mar 16, 2005 12:48 pm Post subject: |
|
|
Grand Poobah
Joined: 16 Oct 2002 Posts: 19981
|
The MessageSet, MessageType, and MessageFormat need to indicate the correct values for the MQOutput node to use.
I don't remember if the RCD is supposed to set these for you or not. _________________ I am *not* the model of the modern major general. |
|
Back to top |
|
 |
TonyD |
Posted: Wed Mar 16, 2005 2:00 pm Post subject: |
|
|
Knight
Joined: 15 May 2001 Posts: 540 Location: New Zealand
|
As indicated by Jeff the properties of the output message must be specvified. This is normally done in the Compute node where the message is constructed:
Code: |
SET OutputRoot.Properties.MessageDomain = 'MRM';
SET OutputRoot.Properties.MessageFormat = 'CWF1';
SET OutputRoot.Properties.MessageSet = 'YourMessageSetID';
SET OutputRoot.Properties.MessageType = 'YourMessageName';
|
The first three are in 'messageSet.mset' and the fourth is under 'Messages' in the '.mxsd' file. There is no need for an RCD. |
|
Back to top |
|
 |
schroederms |
Posted: Thu Mar 17, 2005 4:58 am Post subject: |
|
|
 Disciple
Joined: 21 Jul 2003 Posts: 169 Location: IA
|
|
Back to top |
|
 |
|