I want to catch all Exception from routes.
I add this OnExeption :
onException(Exception.class).process(new MyFunctionFailureHandler()).stop();
Then, I create the class MyFunctionFailureHandler.
public class MyFunctionFailureHandler implements Processor {
@Override
public void process(Exchange exchange) throws Exception {
Throwable caused;
caused = exchange.getProperty(Exchange.EXCEPTION_CAUGHT, Throwable.class);
exchange.getContext().createProducerTemplate().send("mock:myerror", exchange);
}
}
Unfortunately, it doesn't work and I don't know why.
if there is an Exception, the program must stop.
How can I know why this code doesn't work!!
Thanks.