[ 
https://issues.apache.org/jira/browse/CAMEL-6793?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13797815#comment-13797815
 ] 

Claus Ibsen commented on CAMEL-6793:
------------------------------------

Thanks for reporting. I have reproduced the issue and have a pending fix.

> Camel 2.12 shows unexpected warning "Cannot determine current route from 
> Exchange"
> ----------------------------------------------------------------------------------
>
>                 Key: CAMEL-6793
>                 URL: https://issues.apache.org/jira/browse/CAMEL-6793
>             Project: Camel
>          Issue Type: Bug
>          Components: camel-core, eip
>    Affects Versions: 2.12.1
>         Environment: Windows
>            Reporter: MF
>            Assignee: Claus Ibsen
>             Fix For: 2.11.3, 2.12.2, 2.13.0
>
>
> Since upgrading from 2.10.6 to 2.12.1 Camel logs the following warning:
> {code}
> 18:47:10,278 [WARN ] DefaultErrorHandler       - Cannot determine current 
> route from Exchange with id: ID-xyz-0-12, will fallback and use first error 
> handler.
> {code}
> It looks like the "splitter" is causing the problem. If the "<split>" is 
> disabled in the route, then the warning disappears!
> Here's the example route for reproduction:
> {code}
> <?xml version="1.0" encoding="UTF-8"?>
> <beans xmlns="http://www.springframework.org/schema/beans";
>        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
>        xsi:schemaLocation="http://www.springframework.org/schema/beans 
> http://www.springframework.org/schema/beans/spring-beans.xsd
>              http://camel.apache.org/schema/spring 
> http://camel.apache.org/schema/spring/camel-spring.xsd";>
>       <!-- custom exceptions -->
>       <bean id="demoIllegalStateException" 
> class="java.lang.IllegalStateException">
>               <constructor-arg index="0" value="Forced Exception" 
> type="java.lang.String"/>
>       </bean>
>       <!-- this is the camel route which proxy the web service and forward it 
> to the real web service -->
>       <camelContext id="camelCtx" 
> xmlns="http://camel.apache.org/schema/spring"; 
> errorHandlerRef="defaultErrorHandler" trace="false"
>                     messageHistory="true">
>               <errorHandler id="defaultErrorHandler" 
> type="DefaultErrorHandler">
>                       <redeliveryPolicy logExhausted="true"/>
>               </errorHandler>
>               <errorHandler id="noErrorHandler" type="NoErrorHandler"/>
>               <endpoint id="myTimer" uri="timer://myTimer?period=5s"/>
>               <route id="Start" autoStartup="true" trace="false" 
> errorHandlerRef="defaultErrorHandler"
>                      startupOrder="900">
>                       <from uri="ref:myTimer"/>
>                       <setBody>
>                               <simple>Some Test Message</simple>
>                       </setBody>
>                       <to uri="direct:Process"/>
>               </route>
>               <route id="Process" autoStartup="true" trace="false" 
> errorHandlerRef="defaultErrorHandler"
>                      startupOrder="800">
>                       <from uri="direct:Process"/>
>                       <onException>
>                               
> <exception>java.lang.ArithmeticException</exception>
>                               <handled>
>                                       <constant>true</constant>
>                               </handled>
>                               <to uri="direct:HandleException"/>
>                       </onException>
>                       <!-- now delegate the processing of the body with all 
> the selected transfers -->
>                       <to uri="direct:Process2"/>
>               </route>
>               <route id="Process2" autoStartup="true" trace="false" 
> errorHandlerRef="defaultErrorHandler"
>                      startupOrder="30">
>                       <from uri="direct:Process2"/>
>                       <onException>
>                               
> <exception>java.lang.IllegalStateException</exception>
>                               <handled>
>                                       <constant>true</constant>
>                               </handled>
>                               <to uri="direct:HandleException"/>
>                       </onException>
>                       <split stopOnException="true" streaming="false" 
> parallelProcessing="false">
>                               <simple>${body}</simple>
>                               <throwException 
> ref="demoIllegalStateException"/>
>                       </split>
>               </route>
>               <route id="HandleException" autoStartup="true" trace="false"
>                      errorHandlerRef="noErrorHandler"
>                      startupOrder="13">
>                       <from uri="direct:HandleException"/>
>                       <log loggingLevel="INFO" 
> message="[${property.LogPrefix}] EXCEPTION message: ${exception}"/>
>                       <log loggingLevel="DEBUG" 
> message="[${property.LogPrefix}] EXCEPTION stacktrace: 
> ${exception.stacktrace}"/>
>                       <stop/>
>               </route>
>       </camelContext>
> </beans>
> {code}
> Is it a bug or do I have to configure something new? 2.10.6 and previous 
> versions did not show this kind of behavior (meaning: did not log this 
> warning)!



--
This message was sent by Atlassian JIRA
(v6.1#6144)

Reply via email to