Я хотел бы использовать OnException и OnComplition вместе на одном маршруте (версия Camel 2.10.0.redhat-60024):
from("direct:camelTestEndpoint").
onCompletion().
log("onCompletion1").
log("onCompletion2").
log("onCompletion3").
end().
onException(Throwable.class).
handled(true).
log("onException").
end().
log("route")
.throwException(new RuntimeException());
Хотя это не работает, как я ожидаю. Исключение в основном маршруте вызывает остановку маршрута onComplition после первого процессора (это обрабатывается в методе continueProcessing() PipelineHelper). Верблюд проверяет, было ли обработано исключение, и если да, то останавливает обработку.
Выход:
route
onException
onCompletion1
Есть ли мягкий способ сказать верблюду, что он должен пропустить это (без удаления свойства CamelErrorHandlerHandled)?
Спасибо