Author |
Message
|
wmqiadmin |
Posted: Mon Mar 05, 2007 12:47 pm Post subject: error handler |
|
|
 Disciple
Joined: 19 Jun 2005 Posts: 163 Location: epping UK
|
Hi All,
In my error handler message flow, i am redirecting original message to the original queue to try message for number of times.
Now my question is, I am able to redirect the XML message by setting outputRoot.XMLNS but for MRM messages how can i set the output root.
Hence this is just error handler message flow i don't want to parse messages and the message can be of any format TDS or CWF.
Any inputs on this will be highly appreciated.
Thanks in advance
wmqiadin |
|
Back to top |
|
 |
wmqiadmin |
Posted: Mon Mar 05, 2007 1:43 pm Post subject: |
|
|
 Disciple
Joined: 19 Jun 2005 Posts: 163 Location: epping UK
|
to be precise, i have character data (string) and i am unable to send this string data to the output root, at this moment I can't set the MRM parser because I don't know the name and it can be any parser. So can i send the character data to the outputroot without parsing the complete data?
Any inputs on this pls. |
|
Back to top |
|
 |
jsware |
Posted: Mon Mar 05, 2007 2:27 pm Post subject: |
|
|
 Chevalier
Joined: 17 May 2001 Posts: 455
|
wmqiadmin wrote: |
to be precise, i have character data (string) and i am unable to send this string data to the output root, at this moment I can't set the MRM parser because I don't know the name and it can be any parser. So can i send the character data to the outputroot without parsing the complete data?
Any inputs on this pls. |
You should be able to cast the message to a BLOB (or use a reset content descriptor node) before putting it to the output queue. Then the broker won't try to parse the contents and you'll get out exactly what you put in. _________________ Regards
John
The pain of low quaility far outlasts the joy of low price. |
|
Back to top |
|
 |
wmqiadmin |
Posted: Tue Mar 06, 2007 6:06 am Post subject: |
|
|
 Disciple
Joined: 19 Jun 2005 Posts: 163 Location: epping UK
|
scottj2512 wrote: |
You should be able to cast the message to a BLOB (or use a reset content descriptor node) before putting it to the output queue. Then the broker won't try to parse the contents and you'll get out exactly what you put in. |
IF I set SET OutputRoot.BLOB = Message; I see the message in the out queue but without any data in it (data size=0)
If I SET OutputRoot.BLOB.BLOB = Message; it throws exception, any idea how to set the output blob messagae.
thanks
wmqiadmin |
|
Back to top |
|
 |
jsware |
Posted: Tue Mar 06, 2007 6:35 am Post subject: |
|
|
 Chevalier
Joined: 17 May 2001 Posts: 455
|
wmqiadmin wrote: |
...any idea how to set the output blob messagae. |
The following:
Code: |
MQInput -out-> {{Your flow here}}
\
\
-catch-> ResetContentDescriptor{BLOB} -> MQOutput{FAILUREQ} |
should work. You might want to record the exception list somewhere. _________________ Regards
John
The pain of low quaility far outlasts the joy of low price. |
|
Back to top |
|
 |
wmqiadmin |
Posted: Tue Mar 06, 2007 6:42 am Post subject: |
|
|
 Disciple
Joined: 19 Jun 2005 Posts: 163 Location: epping UK
|
Thanks John,
I tried using the follwing funtion its working, only one problem it sending the last XML element tag name along with the message.
DECLARE myChar BLOB CAST(ASBITSTREAM(ref OPTIONS FolderBitStream) AS BLOB CCSID InputRoot.MQMD.CodedCharSetId);
the output is
Quote: |
OriginalMessage='9232006120752079|122229|INT0|CANCEL|2007-01-16 11:27:58' |
Where I want
Quote: |
9232006120752079|122229|INT0|CANCEL|2007-01-16 11:27:58 |
Any input on this, thanks
wmqiadmin
[/quote] |
|
Back to top |
|
 |
wmqiadmin |
Posted: Tue Mar 06, 2007 7:00 am Post subject: |
|
|
 Disciple
Joined: 19 Jun 2005 Posts: 163 Location: epping UK
|
Also I am setting
SET OutputRoot.BLOB.BLOB = myChar;
Am i doing something wrong? |
|
Back to top |
|
 |
|