我有一个分裂/聚合的Camel路线:
from("seda:start")
.routeId("camelRoute")
.log("Request: ${body}")
.split()
.method(SplitService.class, "splitRequest")
.parallelProcessing()
.bean(SendToWorker.class, "sendToQ1(${body}, ${headers})")
.aggregate(header("corrID"),
new CustomAggregationStrategy()).completionSize(5)
.log("Aggregated ${body}")
.bean(SendToWorker.class, "sendToQ2(${body}, ${headers})")
.log("Response: ${body}");
最后一个日志正确显示结果。当我把它称为
时@Autowired
private ProducerTemplate producerTemplate;
[...]
Object o = producerTemplate.requestBodyAndHeaders("seda:start", request, headers)
我无法从Camel路线取回结果。 返回的o实例是请求对象本身。
有谁知道这里有什么问题?
感谢您的帮助。
答案 0 :(得分:1)
答案 1 :(得分:0)
如果在使用以下方法将ExchangePattern设置为Bean之前将其设置为InOut,那该怎么办?
...
.setExchangePattern(ExchangePattern.InOut)
.bean(...