|
RSS Feed - WebSphere MQ Support
|
RSS Feed - Message Broker Support
|
 |
|
MRM to BLOB |
« View previous topic :: View next topic » |
Author |
Message
|
WBI_user |
Posted: Mon Aug 27, 2007 9:21 am Post subject: MRM to BLOB |
|
|
Partisan
Joined: 07 Aug 2001 Posts: 386
|
I am writing subflow to log all incoming messages regardless of if the message is good or bad. The design of the flow is like
MQINPUT --My LOGGING SUBflow--- continue with the rest of the flow. The MQINPUT node normally have the message definition specified and with on demand parsing. The mainflow is developed by other developers which I have no control.
I want to make the Subflow generic (i.e it can take xml, mrm or TDS inputs). So I used a ResetContent descriptor node to reset the content to BLOB first and handle whatever logging requirement in the logic later.
The subflow is like
Input--RCD--Compute--... --Output
The RCD node has no special parameter but just reset to BLOB domain.
I am getting parser exception at the RCD node when I got a bad message. The exception is because the broker is trying to parse the incoming message using the message set specified in the MQINPUT node. I think this is normal because accroding to the info center which says
"If your message flow has updated the message before it is received by the ResetContentDescriptor node, ensure that the changed message contents are still valid for the current parser. If the contents are not valid, the parser generates an error when it attempts to re-create the bit stream from the message tree, and the ResetContentDescriptor node raises an exception."
Because I have to log messages even if they are no good (i.e. cause parser exception). I am looking foe suggestion on how I can do this ? |
|
Back to top |
|
 |
shalabh1976 |
Posted: Mon Aug 27, 2007 10:25 pm Post subject: |
|
|
 Partisan
Joined: 18 Jul 2002 Posts: 381 Location: Gurgaon, India
|
Reverse your design:
Read your message as a BLOB on the MQInput.
Log it and now use a RCD to set it to the MRM domain. _________________ Shalabh
IBM Cert. WMB V6.0
IBM Cert. MQ V5.3 App. Prog.
IBM Cert. DB2 9 DB Associate |
|
Back to top |
|
 |
WBI_user |
Posted: Tue Aug 28, 2007 5:28 pm Post subject: |
|
|
Partisan
Joined: 07 Aug 2001 Posts: 386
|
But the expectation is my subflow is used by other flows which need message logging. So My subflow will always receive whatever messages is coming from the MQInput node. So I cannot recerse my design. |
|
Back to top |
|
 |
jefflowrey |
Posted: Tue Aug 28, 2007 6:06 pm Post subject: |
|
|
Grand Poobah
Joined: 16 Oct 2002 Posts: 19981
|
RCD node doesn't change any data. It merely changes message properties.
It's not clear what you are doing to log the data. If you are, hopefully, sticking it on an output queue somewhere, then you don't need to change anything to BLOB at all.
If, however, you are doing something that requires that you have the bitstream of the message data, you will need to use ASBITSTREAM.
This can be done without knowing what the last child of OutputRoot is. _________________ I am *not* the model of the modern major general. |
|
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
|
|
|
|