I'm faced to a strange problem. I see that a message posted in a queue
is processed twice in a Camel route after an error has been raised
with a rollback
queueRequestEndpoint = activemq:x3s:request
queueReportingEndpoint = activemq:x3s:reporting
queueRequestMessageEndpoint = activemq:x3s:requestmessage
Here is the route :
<camel:route errorHandlerRef="txErrorHandler">
<camel:from ref="queueRequestEndpoint" />
<camel:transacted ref="PROPAGATION_REQUIRED"/>
<camel:doTry>
<camel:convertBodyTo
type="com.xpectis.x3s.platform.model.Request" />
<camel:bean ref="serviceHelper"
method="generateException"/>
<camel:bean ref="serviceHelper"
method="parseRequest" />
<camel:to ref="queueRequestMessageEndpoint" />
<camel:doCatch>
<camel:exception>com.xpectis.x3s.exception.X3SClientException</camel:exception>
<camel:bean ref="serviceHelper"
method="processException" />
<camel:to ref="queueReportingEndpoint"
/>
</camel:doCatch>
<camel:doCatch>
<camel:exception>com.xpectis.x3s.exception.X3STechnicalException</camel:exception>
<camel:to
uri="log:com.xpectis.x3s?level=INFO&multiline=true&showException=true&showCaughtException=true&showStackTrace=true"
/> -->
<camel:rollback/>
</camel:doCatch>
</camel:doTry>
</camel:route>
Charles Moulliard
Senior Enterprise Architect
Apache Camel Committer
*****************************
blog : http://cmoulliard.blogspot.com
twitter : http://twitter.com/cmoulliard