Hi:

The camel's transaction required the transacted-error-handler, but try-catch
required no-error-handler. They will conflict; following is a sample that
the try-catch cannot works while using transaction. but I am not sure if
this is bug or just a camel's limit?

For example, the following route :

<doTry>
        <policy ref="PROPAGATION_REQUIRED">
        <pipeline>
     <to uri="ibatis:table.add?statementType=Insert"/>
     <bean ref="errorbean" method="raiseError"/> 
     </pipeline>
     </policy>
<doCatch>
<exception>java.lang.Exception</exception>
<bean ref="mybean" method="foo"/>
</doCatch>

As for normal understanding: the errorbean(just after ibatis) raise error,
so the pipeline will marked as rollback status, but the exception is still
exist, and the catch clause will be execute.And in camel, doCatch cannot be
execute;


Reply via email to