In camel , try-catch means , if exception occurs , catch-clause will be
execute. 
And how does camel define : What is message(catch-clause received) 's
content? 

Is the content exactly equals to the processed content where exception just
occurs?

For pipe line , catch-clause will received a message whose  content which
will be exactly where exception occurs;
But for multi-case , catch-clause can only received a message whose content
is the multi-case's received original message.

So the pipe-line and multi-cast doesn't consistence. Is it the multi-case 's
bug ? for example:

<doTry>
   <process1>
   <process2>
<doCatch>...</doCatch>
</doTry>

If process2 failed , catch clause will received message which content is the
process1's result.

But another multi-case example

<dotry>
        <multi-cast stopOnException="true">
                <pipeline> <process1><process2> </pipeline>
                <pipeline> <process3> <process4> </pipeline>
    </multi-cast>
<doCatch> </doCatch>
</dotry>

If process2 failed , doCatch will received message whose content is original
message send  to mult-cast, but not be the process1's result;

So is it a bug of multi-cast pattern?  


Reply via email to