論理的な観点から、これは私が実装したい種類のルーティング動作です。
外部サービスの応答を元の要求とマージできるようにしたい。
マルチキャスト、アグリゲーター、およびモックエンドポイントを使用してこれを実装することができましたが、よりクリーンな方法があるかどうか疑問に思いました。私の現在の実装は次のようになります。
<multicast strategyRef="serviceAggregator" stopOnException="false">
<to uri="mock:foo" />
<to uri="http://0.0.0.0:9999/service/?throwExceptionOnFailure=false" />
</multicast>
<camel:to uri="log:uk.co.company.aggregated?showAll=true" />
<to uri="http://0.0.0.0:9999/anotherService/
私が特に気に入らない部分は、モックエンドポイントを使用することですが、これが上記の図を表現するための非常に読みやすい方法ではないとも思います。それで、これを行うためのよりエレガントな方法があるかどうか疑問に思いましたか?