[ https://issues.apache.org/jira/browse/CAMEL-4388?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Claus Ibsen reassigned CAMEL-4388: ---------------------------------- Assignee: Claus Ibsen > Exeptions cannot be propagated to the parent route when using LogEIP > -------------------------------------------------------------------- > > Key: CAMEL-4388 > URL: https://issues.apache.org/jira/browse/CAMEL-4388 > Project: Camel > Issue Type: Bug > Components: camel-core > Affects Versions: 2.7.1 > Reporter: Sergey Zhemzhitsky > Assignee: Claus Ibsen > Attachments: LogProcessor.patch > > > Here is unit test that demonstrates the problem. > For the unit test pass successfully it's necessary to delete LogEIP from the > route. > {code} > package org.apache.camel.impl; > import org.apache.camel.Exchange; > import org.apache.camel.Processor; > import org.apache.camel.builder.RouteBuilder; > import org.apache.camel.test.junit4.CamelTestSupport; > import org.junit.Test; > public class PropagateExceptionTest extends CamelTestSupport { > @Test > public void failure() throws Exception { > getMockEndpoint("mock:handleFailure").whenAnyExchangeReceived(new > Processor() { > @Override > public void process(Exchange exchange) throws Exception { > throw new RuntimeException("TEST EXCEPTION"); > } > }); > getMockEndpoint("mock:exceptionFailure").expectedMessageCount(1); > sendBody("direct:startFailure", "Hello World"); > assertMockEndpointsSatisfied(); > } > @Test > public void success() throws Exception { > getMockEndpoint("mock:handleSuccess").whenAnyExchangeReceived(new > Processor() { > @Override > public void process(Exchange exchange) throws Exception { > throw new RuntimeException("TEST EXCEPTION"); > } > }); > getMockEndpoint("mock:exceptionSuccess").expectedMessageCount(1); > sendBody("direct:startSuccess", "Hello World"); > assertMockEndpointsSatisfied(); > } > @Override > protected RouteBuilder[] createRouteBuilders() throws Exception { > return new RouteBuilder[] { > new RouteBuilder() { > public void configure() throws Exception { > from("direct:startFailure") > .onException(Throwable.class) > .to("mock:exceptionFailure") > .end() > .to("direct:handleFailure") > .to("mock:resultFailure"); > from("direct:handleFailure") > .errorHandler(noErrorHandler()) > .log("FAULTY LOG") > .to("mock:handleFailure"); > } > }, > new RouteBuilder() { > public void configure() throws Exception { > from("direct:startSuccess") > .onException(Throwable.class) > .to("mock:exceptionSuccess") > .end() > .to("direct:handleSuccess") > .to("mock:resultSuccess"); > from("direct:handleSuccess") > .errorHandler(noErrorHandler()) > .to("mock:handleSuccess"); > } > } > }; > } > } > {code} -- This message is automatically generated by JIRA. For more information on JIRA, see: http://www.atlassian.com/software/jira