如何在Apache骆驼的异常块中处理异常

时间:2019-06-12 11:18:32

标签: apache-camel onexception

我试图在onException中处理Apache骆驼中的异常。有人可以指导我吗?

我写了另一个onException,它将处理所有异常,但是流程没有转移到该异常块中

onException(SchemaValidationException.class)
        .to("xslt:stylesheet/example/TransformErrorBlock.xsl?saxon=true")
        .log("Validation error in received message, response sent: ${body}")
        .handled(true);

我的期望是,如果此块中有异常,则应将其捕获到另一个onException块中

1 个答案:

答案 0 :(得分:0)

您不能通过设计来做到这一点,因为Camel只允许onException块处理异常,否则当onException A被onException处理时,您可能会陷入无限循环,这会导致新异常,然后可以再次由onException A处理,所以循环圈不停。