Apache camel 如何在拆分聚合时使用聚合器选项,如completionSize、completionTimeout

Apache camel 如何在拆分聚合时使用聚合器选项,如completionSize、completionTimeout,apache-camel,spring-camel,Apache Camel,Spring Camel,我可以使用具有completionSize和completionTimeout的聚合器,如下所示: from("direct:aggregate") .routeId("aggregate") .aggregate(constant(true), new JSONAggregator()) .completionSize(500) .completionTimeout(3000) .c

我可以使用具有completionSize和completionTimeout的聚合器,如下所示:

    from("direct:aggregate")
    .routeId("aggregate")
    .aggregate(constant(true), new JSONAggregator())
        .completionSize(500)
        .completionTimeout(3000)
        .convertBodyTo(String.class)
        .log("${body}")
    .end();

但是,当我将aggregationStrategy与拆分器结合使用时,我没有这些选项。如何使用拆分器实现聚合器选项?

您不能将这些选项用于拆分器与聚合策略相结合,只需重新聚合它以前拆分的输入消息的所有部分。

示例:将邮件拆分为5000行,转换每行并根据策略重新聚合这些行

由于加总大小由输入消息定义,因此不能使用任何其他聚合完成选项。


但是,您可以做的是,在不使用聚合策略的情况下使用拆分EIP,然后在处理过程中使用独立的EIP。然后,您可以根据需要配置聚合器。

您是否可以在问题中添加您认为应该使用的代码(包括拆分)?我只是想看看你在期待什么work@Sam我希望在进行拆分聚合时,能够提供这些选项!