|
RSS Feed - WebSphere MQ Support
|
RSS Feed - Message Broker Support
|
 |
|
Exception / Error handling in MQSI flow |
« View previous topic :: View next topic » |
Author |
Message
|
pkishor17 |
Posted: Thu Apr 07, 2005 8:18 pm Post subject: Exception / Error handling in MQSI flow |
|
|
Newbie
Joined: 25 May 2004 Posts: 7
|
Hi
I am working on a flow which converts CSV to XML in MQSI.
In this scenario I have to do like this –
If I am sending 6 messages and if the error occurs in 3rd and 5th messages they will go to failure queue, but then next 6th message go to the output queue
Message 1 – No Problem – Goto – Output Queue
Message 2 – No Problem – Goto – Output Queue
Message 3 – No Problem – Goto – Failure Queue
Message 4 – No Problem – Goto – Output Queue
Message 5 – No Problem – Goto – Failure Queue
Message 6 – No Problem – Goto – Output Queue
How to handle this errors / exceptions
Can this is possible, please help/suggest me
Thanks in Advance
Kishor |
|
Back to top |
|
 |
Ramphart |
Posted: Fri Apr 08, 2005 4:14 am Post subject: |
|
|
 Disciple
Joined: 21 Jul 2004 Posts: 150 Location: South Africa, JHB
|
I'm not really sure what you're asking but I'll try to answer you anyway.
If you send 6 physical messages to the Queue then the success or failure of one message is totally unrelated to the success or failure of another message. So what's happing in your case is totally correct.
If you were sending one message with 6 lines in it where each line is a csv record then you can get the whole message to fail or succeed.
If your 6 messages are related then you could probably send it as MQ group messages and build one big message containing all your smaller logical messages (per groupid) then pass it to your main flow as one messages.
Hope this helps. _________________ Applications Architect |
|
Back to top |
|
 |
JT |
Posted: Fri Apr 08, 2005 5:58 am Post subject: |
|
|
Padawan
Joined: 27 Mar 2003 Posts: 1564 Location: Hartford, CT.
|
It’s also possible if you introduce some sort of repository in the message flow (i.e. a database or memory store, etc), to save the status of the messages (much like the Aggregate function does). Then the status of previous messages can be interrogated to determine the outcome of the current message.
Of course, you’ll need to ensure that the messages are not processed concurrently, as the status of the messages may not be available in a timely fashion. |
|
Back to top |
|
 |
jefflowrey |
Posted: Fri Apr 08, 2005 6:21 am Post subject: |
|
|
Grand Poobah
Joined: 16 Oct 2002 Posts: 19981
|
It's not clear how many input messages you have.
If you have six input messages, and you need to ensure that they don't get propagated unless all six are valid...
Then you need a repository ans JT mentioned. But I would store all messages in the repository until the current message is the last one to go in, and then retreive the other five and process them.
If you have one input message, and are propagating six messages out, then you can control your transactionality such that none of the output messages are commited on the output queue until all six are ready. _________________ I am *not* the model of the modern major general. |
|
Back to top |
|
 |
pkishor17 |
Posted: Sun Apr 10, 2005 9:34 pm Post subject: |
|
|
Newbie
Joined: 25 May 2004 Posts: 7
|
Its working fine now
Thanks all for your suggesstions, there is no relation between the messages, no logic for groupid.
Thanks again for help
kishor |
|
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
|
|
|
|