|
RSS Feed - WebSphere MQ Support
|
RSS Feed - Message Broker Support
|
 |
|
OutputRoot containing InputRoot in XML tag |
« View previous topic :: View next topic » |
Author |
Message
|
nas |
Posted: Fri May 26, 2006 12:38 pm Post subject: OutputRoot containing InputRoot in XML tag |
|
|
Newbie
Joined: 08 Apr 2006 Posts: 7
|
I am trying to set the InputRoot to a XML tag in the OutputRoot. I am first setting the InputRoot to Environment.Variables.OriginalMessage.
Set OutputRoot.XML.FMMessage.FMBody.FMRecord.Error.OriginalMessage = Environment.Variables.OriginalMessage;
I believe this is valid to do.
The strange thing is this works when I am stepping through the debugger but it does not work when executing outside of the debugger.
Has anyone experience this type of behavior?
I am using Broker V6.0 and toolkit 6.0 I am at the current refresh and fix packs for both. |
|
Back to top |
|
 |
fjb_saper |
Posted: Fri May 26, 2006 12:54 pm Post subject: |
|
|
 Grand High Poobah
Joined: 18 Nov 2003 Posts: 20756 Location: LI,NY
|
I don't quite understand what you are gunning for here.
You would have Environment.Variables.OriginalMessage and underneath you should expect Properties, MQMD or other such header, and last tag would be your domain name (XMLNSC, BLOB, MRM etc...).
If you wanted only the message you should have assigned InputBody and not InputRoot.
And remember if you are using namespaces you have to use the right one or the assignment will not be what you expect.
Enjoy  _________________ MQ & Broker admin |
|
Back to top |
|
 |
nas |
Posted: Mon May 29, 2006 10:38 am Post subject: |
|
|
Newbie
Joined: 08 Apr 2006 Posts: 7
|
What I am trying to accomplish is a way to have the original message part of an error message. The error message gives details on the reason for the failure and the original message is inserted in that error message.
<FMBody>
<FMRecord>
<Error>
<ErrorDescription>
<ErrorDetail>Missing Element in the @1-07 record</ErrorDetail>
<NodeSource>CLS_INBOUND_CHANGE_TRANS_MF.TransformXMLMsg</NodeSource>
</ErrorDescription>
<OriginalMessage>
<Properties>
<MessageSet>O8OBCK8002001</MessageSet>
<MessageType>FMMessage</MessageType>
<MessageFormat>XML1</MessageFormat>
<Encoding>546</Encoding>
<CodedCharSetId>437</CodedCharSetId>
<Transactional>TRUE</Transactional>
<Persistence>FALSE</Persistence>
<CreationTime>2006-05-29 16:46:07.080</CreationTime>
<ExpirationTime>-1</ExpirationTime>
<Priority>0</Priority>
<ReplyIdentifier>000000000000000000000000000000000000000000000000</ReplyIdentifier>
<ReplyProtocol>MQ</ReplyProtocol>
<Topic></Topic>
<ContentType></ContentType>
</Properties>
<MQMD>
<SourceQueue>CLS.CHANGETRANSCL4.Q</SourceQueue>
<Transactional>TRUE</Transactional>
<Encoding>546</Encoding>
<CodedCharSetId>437</CodedCharSetId>
<Format> </Format>
<Version>2</Version>
<Report>0</Report>
<MsgType>8</MsgType>
<Expiry>-1</Expiry>
<Feedback>0</Feedback>
<Priority>0</Priority>
<Persistence>0</Persistence>
<MsgId>414d512046514d504d3031512020202015c974442022aa0a</MsgId>
<CorrelId>000000000000000000000000000000000000000000000000</CorrelId>
<BackoutCount>0</BackoutCount>
<ReplyToQ> </ReplyToQ>
<ReplyToQMgr>FQMPM01Q </ReplyToQMgr>
<UserIdentifier>singh </UserIdentifier>
<AccountingToken>1601051500000007e53b2b67fd7c30828ba6280f2e000000000000000000000b</AccountingToken>
<ApplIdentityData> </ApplIdentityData>
<PutApplType>11</PutApplType>
<PutApplName>C:\RFHUtil\rfhutilc.exe </PutApplName>
<PutDate>2006-05-29</PutDate>
<PutTime>16:46:07.080</PutTime>
<ApplOriginData> </ApplOriginData>
<GroupId>000000000000000000000000000000000000000000000000</GroupId>
<MsgSeqNumber>1</MsgSeqNumber>
<Offset>0</Offset>
<MsgFlags>0</MsgFlags>
<OriginalLength>-1</OriginalLength>
</MQMD>
<MRM>
<FMHeader>
<SourceComponent>PM4Data.FMEInbound</SourceComponent>
<TargetComponent>FMEBroker.Inbound</TargetComponent>
<TimeStamp>2006-05-18</TimeStamp>
<MessageType>
<Version>1.0</Version>
Chng_Send
</MessageType>
<TransType></TransType>
<Topic></Topic>
<ReplyTopic></ReplyTopic>
<ReplyToQmgr></ReplyToQmgr>
<ReplyToQ></ReplyToQ>
<Identifier>COM04_CHNG_TRANSACTION_MAY_29</Identifier>
<State></State>
<SecurityInfo></SecurityInfo>
<LogInfo></LogInfo>
<ProdOrTest>T</ProdOrTest>
<EventId>RecordCount - 3</EventId>
</FMHeader>
<FMBody>
<FMRecord>
<ChangeTx>
<Detail>
<CL4>@20212345678912345678FILEDIDrecipiIDFILEDBRThis_is_fillBorrowers_last_nameXXXXXXXXXXXXXXXXBorFirstNameM20001212X12345678901234567890DUNS_SCIDDUNS_RCIDABCDEFGHIJKLMNOPQRSTABCDEFGHIJKLMNOPQRSTABCDEFGHIJKLMNOPQRSTABCDEFGHIJKLMNOPQRSTABCDEFGHIJKLMNOPQRSTABCDEFGHIJKLMNOPQRSTABCDEFGHIJKLMNOPQRSTABCDEFGHIJKLMNOPQRSTABCDEFGHIJKLMNOPQRST123ABCDEFGHIJK123456789ABCABCDEFGHIJK123456789ABCDEFGHIJK123456789ABCABCDEFGHIJKLMNOPQRSTABCDEFGHIJKLMNOPQRSTABCDEFGHIJKLMNOPQRSTABCDEFGHIJKLMNOPQRST*</CL4>
</Detail>
<ChangeType>
<Type>@1-07</Type>
<CL4>@10712345678912345678FILEDIDrecipiIDFILEDBRuniqueLoanIDXXXX20001212AAABC19990406ABCDEFSVCODE2004040620101106CD123456789191000000014PV1A0012001010120010101K20010202K20010202JABCDEFGHIJK123456789DUNS_SCIDDUNS_RCIDDUNS_LNIDDUNS_SVCDABCDABCDEFGHIJK123456789ABCDEFGHIJK123456789ABCDEFGHIJK12345ABCDEFGHIJK1234567891237ABCDEFGHIJK123456789ABCDEFGHIJK123456789123ABCDEFGHIJK123456789ABCDEFGHIJK123456789123ABCDEFGHIJK123456789ABCDEFGHIJK123456789ABCDEFGHIJK12345ABCDEFGHIJK1234567891237*</CL4>
</ChangeType>
<ChangeType>
<Type>@1-08</Type>
<CL4>@10812345678912345678FILEDIDrecipiIDFILEDBRuniqueLoanIDXXXX20001212AAABC19990406ABCDEFSVCODE2004040620101106CD123456789191000000014PV1A0012001010120010101KABCDEFGHIJK123456789DUNS_SCIDDUNS_RCIDDUNS_LNIDDUNS_SVCDABCDEFGHIJK123456789ABCDEFGHIJK123456789ABCDEFGHIJK12345ABCDEFGHIJK1234567891237ABCDEFGHIJK123456789ABCDEFGHIJK123456789ABCDEFGHIJK123456789ABCDEFGHIJK12345ABCDEFGHIJK1234567891237ABCDEFGHIJK12345678912ABCDEFGHIJK123456789123ABCDEFGHIJK123456789ABCDEFGHIJK123456789123*</CL4>
</ChangeType>
<ChangeType>
<Type>@1-09</Type>
<CL4>@10912345678912345678FILEDIDrecipiIDFILEDBRuniqueLoanIDXXXX20001212AAABC19990406ABCDEFSVCODE2004040620101106CD123456789191000000014PV1A001Y1200104062001040600000010Y2002040600000010YY00000000001234567890DUNS_SCIDDUNS_RCIDDUNS_LNIDDUNS_SVCDABCD20010605ABCDEFGHIJK123456789ABCDEFGHIJK123456789ABCDEFGHIJK123456789ABCDEFGHIJK12345678912ABCDEFGHIJK123456789123ABCDEFGHIJK123456789ABCDEFGHIJK123456789123ABCDEFGHIJK123456789ABCDEFGHIJK123456789ABCDEFGHIJK123456789ABCDEFGHIJK123456789*</CL4>
</ChangeType>
<ChangeType>
<Type>@1-10</Type>
<CL4>@11012345678912345678FILEDIDrecipiIDFILEDBRuniqueLoanIDXXXX20001212AAABC19990406ABCDEFSVCODE2004040620101106CD123456789191000000014PV1A001Y12001040620010406000000102001010100000010Y00000001Y12001010100000010XV00000000001234567890DUNS_SCIDDUNS_RCIDDUNS_LNIDDUNS_SVCDABCD20010605ABCDEFGHIJK123456789ABCDEFGHIJK123456789ABCDEFGHIJK12345ABCDEFGHIJK123456789123ABCDEFGHIJK123456789ABCDEFGHIJK123456789123ABCDEFGHIJK123456789ABCDEFGHIJK123456789ABCDEFGHIJK123456789ABCDEFGHIJK123456789*</CL4>
</ChangeType>
<ChangeType>
<Type>@1-11</Type>
<CL4>@11112345678912345678FILEDIDrecipiIDFILEDBRuniqueLoanIDXXXX20001212AAABC19990406ABCDEFSVCODE2004040620101106CD123456789191000000014PV1A00120010406000000100000010020010406XX00000000001234567890DUNS_SCIDDUNS_RCIDDUNS_LNIDDUNS_SVCDABCDEFGHIJK123456789ABCDEFGHIJK123456789ABCDEFGHIJK12345ABCDEFGHIJK1234567891237ABCDEFGHIJK123456789ABCDEFGHIJK123456789ABCDEFGHIJK12345ABCDEFGHIJK1234567891236ABCDEFGHIJK23456789012345ABCDEFGHIJK123456789123ABCDEFGHIJK123456789ABCDEFGHIJK123456789123*</CL4>
</ChangeType>
<ChangeType>
<Type>@1-12</Type>
<CL4>@11212345678912345678FILEDIDrecipiIDFILEDBRuniqueLoanIDXXXX20001212AAABC19990406ABCDEFSVCODE2004040620101106CD123456789191000000014PV1A00120010406000000100000010020010406X00000000001234567890DUNS_SCIDDUNS_RCIDDUNS_LNIDDUNS_SVCDABCDEFGHIJK123456789ABCDEFGHIJK123456789ABCDEFGHIJK12345ABCDEFGHIJK1234567891237ABCDEFGHIJK123456789ABCDEFGHIJK123456789ABCDEFGHIJK12345ABCDEFGHIJK1234567891236ABCDEFGHIJK234567890123456ABCDEFGHIJK123456789123ABCDEFGHIJK123456789ABCDEFGHIJK123456789123*</CL4>
</ChangeType>
<ChangeType>
<Type>@1-24</Type>
<CL4>@12412345678912345678FILEDIDrecipiIDFILEDBRuniqueLoanIDXXXX20001212AAABC19990406ABCDEFSVCODE2004040620101106CD123456789191000000014PV1A0010000110000110001100011000112001040600000010200010010000010020010406000001002001040600000100X2001101100000000001234567890DUNS_SCIDDUNS_RCIDDUNS_LNIDDUNS_SVCDADCV2001101101020304ABCDEFGHIJK12345678ABCDEFGHIJK123456789123ABCDEFGHIJK123456789ABCDEFGHIJK123456789123ABCDEFGHIJK123456789ABCDEFGHIJK123456789ABCDEFGHIJK12345ABCDEFGHIJK1234567891237*</CL4>
</ChangeType>
</ChangeTx>
</FMRecord>
</FMBody>
</MRM>
</OriginalMessage>
</Error>
</FMRecord>
</FMBody> |
|
Back to top |
|
 |
pottas |
Posted: Tue May 30, 2006 1:02 am Post subject: |
|
|
 Disciple
Joined: 27 Oct 2005 Posts: 185 Location: South Africa
|
contact admin,
I'm not too sure if this is going to be the answer to your question, but it is definitely an alternative way of handling error messages.
We have a Sub Flow that gets invoked when we catch an error / exception that (in principle) does the following:
1. Gets the exception (Sub Flow):
a. Reset message content to BLOB (RCD)
b. Write Exception List to Body (Compute):
- Copy Message Headers
- SET Environment.myBody=InputBody
- SET OutputRoot.XML.Error=InputExceptionList
c. Write Exception list to RFH2 (Compute):
- Copy Message Headers
- SET OutputRoot.MQRFH2.usr.Error=InputBody
- SET OutputRoot."BLOB"=Environment.myBody
2. Write message to Queue
...so what we end up with is the original message on the queue and the ExceptionList tree in the RFH2 usr field.
Obviously you can re-structure this to have your InputBody and ExceptionList Tree in the same message and possibly wrap some Root Tag around it.
As I said, it is an alternative.
pottas |
|
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
|
|
|
|