2 Replies Latest reply on Jan 6, 2010 8:58 AM by murugess

    Issue with Splitter - messageexchange is shared among all exchanges

    murugess

      In our project, we are using splitter to split the incoming message and then process the individual split messages and finally aggregate them.  We have global error handler defined which is invoked whenever an exception is thrown in any of the endpoint. Now the issue ,as it looks like, is that message exchange is shared among all the split exchanges. And when any of the split message goes through the exception handler, camelcaughtexception property is set on the messageexchange. We also notice that the new exchange is always created ( in the pipeline code) from the messageexchange of old exchange. Because of this all the subsequent split messages have this property already set on the messageexchange and are not handled in case exception is thrown.

         It is not possible to reset the camelcaughtexception property as the split messages are processed in parellel.

       

      Any suggestions to solve this problem is highly appreciated. Please let me know if you need more information on the issue.