Je souhaite capturer toutes les exceptions des itinéraires.Apache Camel onException
-je ajouter cette OnExeption:
onException(Exception.class).process(new MyFunctionFailureHandler()).stop();
Ensuite, je crée la MyFunctionFailureHandler de classe.
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);
}
}
Malheureusement, cela ne fonctionne pas et je ne sais pas pourquoi.
S'il y a une Exception, le programme doit s'arrêter.
Comment puis-je savoir pourquoi ce code ne fonctionne pas !!
thxs.
Je dois demander ... Pourquoi ne pas onException (Exception.class) .pour ("Mock: myError") ? Pourquoi utiliser un processeur uniquement pour transférer vers un autre point de terminaison? – kaqqao