【发布时间】:2020-04-23 13:21:38
【问题描述】:
以下java DSL的等效xml是什么,请建议
public class OrderRouter1 extends RouteBuilder {
@Override
public void configure() throws Exception {
from("direct:processOrder")
.split(body().method("getItems"), new OrderItemStrategy())
.parallelProcessing()
.to("direct:processItem")
.end();
from("direct:processItem")
.choice()
.when(body().method("getType").isEqualTo("Book"))
.to("bean:itemService?method=processBook").
otherwise()
.to("bean:itemService?method=processPhone");
}
}
我尝试使用以下 xml 配置,但不使用聚合器,但是当我启用并行处理时,它会按顺序工作。
<camelContext id="orderCtx" xmlns="http://camel.apache.org/schema/spring">
<route>
<from uri="direct:processOrder" />
<split parallelProcessing="true">
<simple>${body}</simple>
<to uri="direct:processItem" />
</split>
</route>
<route>
<from uri="direct:processItem" />
<bean beanType="com.apache.camel.aggregrator.ItemSvc" method="processBook"/>
<bean beanType="com.apache.camel.aggregrator.ItemSvc" method="processPhone"/>
</route>
</camelContext>
【问题讨论】:
标签: java apache-camel