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?