我想在一条路线中同时使用 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 路由在第一个处理器之后停止(它在 PipelineHelper 的 continueProcessing() 方法中处理)。Camel 检查是否处理了异常,如果是,则停止处理。
输出:
route
onException
onCompletion1
我有没有温和的方式说骆驼应该跳过这个(没有“CamelErrorHandlerHandled”属性删除)?
谢谢