Author |
Message
|
raghubegur |
Posted: Thu Jul 28, 2005 4:24 am Post subject: Invalid parser sequence error |
|
|
Apprentice
Joined: 15 Jul 2002 Posts: 45
|
My msg flow :
Inputnode -> RCD -> mapping -> compute -> Outputnode.
RCD : reset msg set , reset msg type ( MRM domain, TDS format )
Inputmessage has only MQMD and a body. No other headers.
Compute node constructs RFH2 header as follows :
Code: |
CALL CopyEntireMessage();
SET OutputRoot.MQRFH2.(MQRFH2.Field)Version = 2;
SET OutputRoot.MQRFH2.(MQRFH2.Field)Format = 'MQSTR ';
SET OutputRoot.MQRFH2.mcd.Msd = 'mrm';
SET OutputRoot.MQRFH2.mcd.Set = 'F5O2UPS002001';
SET OutputRoot.MQRFH2.mcd.Type = 'TMI_VENDATA_CI';
SET OutputRoot.MQRFH2.mcd.Fmt = 'CwXML';
SET OutputRoot.MQMD.Format = 'MQHRF2 ';
|
When I send a input message using rfhutil WITHOUT rfh2 header this exception is thrown :
Code: |
<Error>
<TimeOfError>2005-07-28 17:45:30.967586</TimeOfError>
<MessageID>414d5120442e434f4e2e42524b2e303142e50e442001611f</MessageID>
<ProcessID>GEXCRT</ProcessID>
<ExceptionList>
<File>/build/S500_P/src/DataFlowEngine/ImbMqOutputNode.cpp</File>
<Line>751</Line>
<Function>ImbMqOutputNode::evaluate</Function>
<Type>ComIbmMQOutputNode</Type>
<Name>PORTAL_PPLSOFT#FCMComposite_1_10</Name>
<Label>PORTAL_PPLSOFT.Q.BRK.PEO.RCV.REQ.01</Label>
<Text>Caught exception and rethrowing</Text>
<Catalog>BIPv500</Catalog>
<Severity>3</Severity>
<Number>2230</Number>
<ParserException>
<File>/build/S500_P/src/DataFlowEngine/ImbRootParser.cpp</File>
<Line>274</Line>
<Function>ImbRootParser::refreshBitStreamFromElements</Function>
<Type>ComIbmMQInputNode</Type>
<Name>PORTAL_PPLSOFT#FCMComposite_1_1</Name>
<Label>PORTAL_PPLSOFT.Q.POR.BRK.SND.REQ.03</Label>
<Text>Invalid parser sequence</Text>
<Catalog>BIPv500</Catalog>
<Severity>2</Severity>
<Number>6062</Number>
<Insert>
<Type>5</Type>
<Text>MQHRF2</Text>
</Insert>
<Insert>
<Type>5</Type>
<Text>mrm</Text>
</Insert>
</ParserException>
</ExceptionList>
</Error>
|
When I set a empty rfh2 header in rfhutil ( only click on version 2 option on rfh tab ) and send the same message the message is successfully processed.
While debugging I found that the MQMD.Format is NOT present after compute node.
Please help.
Cheers,
Raghu |
|
Back to top |
|
 |
jefflowrey |
Posted: Thu Jul 28, 2005 4:31 am Post subject: |
|
|
Grand Poobah
Joined: 16 Oct 2002 Posts: 19981
|
Why are you adding the RFH2 at the end of the message? _________________ I am *not* the model of the modern major general. |
|
Back to top |
|
 |
raghubegur |
Posted: Thu Jul 28, 2005 5:04 am Post subject: |
|
|
Apprentice
Joined: 15 Jul 2002 Posts: 45
|
I am sending my message to peoplesoft connector and I need to pass the msg set id information. Hence I am constructing rfh2 header. |
|
Back to top |
|
 |
jefflowrey |
Posted: Thu Jul 28, 2005 5:10 am Post subject: |
|
|
Grand Poobah
Joined: 16 Oct 2002 Posts: 19981
|
raghubegur wrote: |
I am sending my message to peoplesoft connector and I need to pass the msg set id information. Hence I am constructing rfh2 header. |
Yes.
But why are you constructing it at the end of your message?
Because that is what the code you posted does.
If you changed your code so it added the RFH2 after the MQMD header, but before the body, you probably would be successfull. _________________ I am *not* the model of the modern major general. |
|
Back to top |
|
 |
Alorver |
Posted: Tue Jul 13, 2021 12:30 am Post subject: |
|
|
Newbie
Joined: 30 Aug 2020 Posts: 1
|
CALL CopyEntireMessage();
IF (OutputRoot.MQRFH2 IS NULL) THEN
CREATE NEXTSIBLING OF OutputRoot.MQMD DOMAIN('MQRFH2') NAME 'MQRFH2';
END IF;
SET OutputRoot.MQRFH2.usr.<fieldName> = <value> ; |
|
Back to top |
|
 |
|