2016-05-16 3 views
-1

После агрегации я пытаюсь разделить обмен, который представляет собой группу обменов. Но внутри раскола элементы группы равны нулю.Агрегат затем разбивается на Apache Camel

Я использую Apache Camel 2,17 (верблюд-жильный, верблюд-FTP и верблюжью Scala)

from("sftp://[email protected]/path?password=pass") 
.setHeader("tag", extractTagFromFilename) 
.aggregate(header("tag"), new GroupedExchangeAggregationStrategy()) 
.completionSize(3) // i want 3 files per group 
.split(_.in) 
    .process{m => println("== > " + m.in[])} 
.end() 
//.process{m => println("")} // btw this does not compile, why ? 
.log("${body}") 

==> нулевого

==> нулевой

==> null

Почему элементы в группе равны нулю?

+0

В чем причина нисходящего потока? – mfudi

ответ

0

Для решения этой проблемы стратегия агрегации должна быть GroupedMessageAggregationStrategy вместо GroupedExchangeAggregationStrategy.

Это очень больно, что документация не является актуальной, следует упомянуть, что «.groupExchanges()» устарела, а GroupedMessageAggregationStrategy следует использовать для получения простой агрегации на основе списка.