Apache camel 驼峰-如何在异常时强制拆分器停止,并将聚合结果与异常一起返回

Apache camel 驼峰-如何在异常时强制拆分器停止,并将聚合结果与异常一起返回,apache-camel,Apache Camel,如何使用camel实现此过程: 分裂 处理每个拆分的项目 汇总结果 如果发生异常: 停止分裂 返回异常前所有项目的聚合结果以及异常信息 在split上定义.stopOneException(),我可以实现停止进程并输出异常信息,而不会产生聚合结果 通过在聚合策略中处理异常,是否可以强制拆分器停止处理所有剩余的项目?我相信您所说的是,拆分交换在异常时停止 在camel 2.2中,您的子交换将得到处理,如果有任何异常,进一步的消息也将被处理,在聚合中,您可以查看/分析这一点 .stop

如何使用camel实现此过程:

  • 分裂

  • 处理每个拆分的项目

  • 汇总结果

    如果发生异常:

  • 停止分裂

  • 返回异常前所有项目的聚合结果以及异常信息

在split上定义.stopOneException(),我可以实现停止进程并输出异常信息,而不会产生聚合结果


通过在聚合策略中处理异常,是否可以强制拆分器停止处理所有剩余的项目?

我相信您所说的是,拆分交换在异常时停止

在camel 2.2中,您的子交换将得到处理,如果有任何异常,进一步的消息也将被处理,在聚合中,您可以查看/分析这一点

.stopOnExceptions(false)
驼峰2.2:当出现问题时是否立即停止继续处理 发生异常。如果禁用,则骆驼继续分割并处理 子消息,无论其中一个消息是否失败。您可以在中处理异常 AggregationStrategy类,您可以完全控制如何处理它