ASG
IBM
Zystems
Cressida
Icon
Netflexity
 
  MQSeries.net
Search  Search       Tech Exchange      Education      Certifications      Library      Info Center      SupportPacs      LinkedIn  Search  Search                                                                   FAQ  FAQ   Usergroups  Usergroups
 
Register  ::  Log in Log in to check your private messages
 
RSS Feed - WebSphere MQ Support RSS Feed - Message Broker Support

MQSeries.net Forum Index » WebSphere Message Broker (ACE) Support » OutputRoot containing InputRoot in XML tag

Post new topic  Reply to topic
 OutputRoot containing InputRoot in XML tag « View previous topic :: View next topic » 
Author Message
nas
PostPosted: Fri May 26, 2006 12:38 pm    Post subject: OutputRoot containing InputRoot in XML tag Reply with quote

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
View user's profile Send private message
fjb_saper
PostPosted: Fri May 26, 2006 12:54 pm    Post subject: Reply with quote

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
View user's profile Send private message Send e-mail
nas
PostPosted: Mon May 29, 2006 10:38 am    Post subject: Reply with quote

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
View user's profile Send private message
pottas
PostPosted: Tue May 30, 2006 1:02 am    Post subject: Reply with quote

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
View user's profile Send private message
Display posts from previous:   
Post new topic  Reply to topic Page 1 of 1

MQSeries.net Forum Index » WebSphere Message Broker (ACE) Support » OutputRoot containing InputRoot in XML tag
Jump to:  



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
Protected by Anti-Spam ACP
 
 


Theme by Dustin Baccetti
Powered by phpBB © 2001, 2002 phpBB Group

Copyright © MQSeries.net. All rights reserved.