マルチキャスト コンポーネントでエンドポイント固有のヘッダー値を設定したいと考えています。
以下のような XML DSL:
<route>
<from uri="direct:testRoute"/>
<multicast strategyRef="MyAggregator" parallelProcessing="true">
<to uri="direct:call1"/> <!-- set the header MY_HEADER = "call_1" -->
<to uri="direct:call2/> <!-- set the header MY_HEADER = "call_2" -->
</multicast>
</route>
基本的には、応答集計で知りたいのですが、この応答がどのサービス要求に属しているかです。
私はこれをやってみましたが、正しい方法ではありません (解析例外):
<to uri="direct:call1">
<setHeader headerName="MY_HEADER"><simple>call1</simple></setHeader>
</to>
ドキュメントを読んでわかることは、マルチキャストはソース Exchange をコピーし、各コピーをマルチキャストするということです。したがって、これは Exchange の浅いコピーであり、すべてのマルチキャスト受信者間で共有される一種の参照です。
しかし、ここでは、個々の受信者の特定のヘッダー値を探しています。
これを行う方法?ポインタはありますか?