1
到目前爲止,我的經驗告訴我,消息中的身體總是隨着任何處理而改變。所以現在我總是處理數據,最終結果總是出現在我可以用於進一步處理的身體上。在駝峯範圍外傳遞身體信息
目前我遇到一些奇怪的事情 - 或者,不奇怪的事,但我沒有使用。
我使用下面的路由
<route>
<from uri="activemq:queue:add"/>
<split>
<simple>${body}</simple>
<bean ref="pool" method="add(${body.getId},${body.getText})"/>
<log loggingLevel="INFO" message="GOOD BODY ${body}"/>
</split>
<log loggingLevel="INFO" message="BAD BODY of type of argument of add method ${body}"/>
</route>
,我想至少訪問,因爲它是在良好的身體記錄中顯示add方法的結果,但最後身體後來由於某種原因而與交換調用方法add的原始類型的參數。
我在這裏工作的分裂ArrayList的,但無論如何,最後我需要一個條目只是一個結果。此外,我需要使用add方法添加列表中的所有對象,所以我無法僅使用單個條目。
我怎樣才能通過「內部」處理的結果通過它外面回來給發出呼叫的路線?
我打得有點用'aggregationStrategy'和使用'UseLatestAggregationStrategy'有一些很簡單的'correlationExpression',但最後我不得不把它傳遞給一些隊列/孩子 - 我不想這樣做 - 我想從原始路線返回聚合部分到「調用者」。有什麼技巧可以用來覆蓋InOut模式,而不是將它傳遞給新端點? –