Usecase:httpエンドポイントからメッセージを取り出し、それらをjmsエンドポイントにルーティングしたいとします。Camelのjmsリスナーが正しいメッセージを受け取っていない
マイルート設定は以下のようになります。
from("jetty:http://0.0.0.0:9080/quote")
.convertBodyTo(String.class)
.to("stream:out")
.to(InOut, "wmq:queue:" + requestQueue +
"?replyTo=" + responseQueue +
"&replyToType=" + replyToType +
"&useMessageIDAsCorrelationID=true");
私の理解では、その私がJMSエンドポイントの要求 - 応答パターンを取得し、CorrelationIDが対応する要求に対する応答を行うために、一意の識別子となり、このよう。 これは、アプリケーションが1つしか実行されていないのに、複数のインスタンスが同時に実行されているときにうまく動作し、プロデューサだけでなく、ランダムに応答が取得されます。
たとえば、AとBは、共有キューの応答を受信するまったく同じ構成のルート(およびリスナー)の2つのインスタンスです。時々、Aは応答を得ますが、Bによって生成されたメッセージの応答も収集します。
これに関するヘルプ/参考情報をお待ちしています。ありがとう!
での「JMSオーバー要求 - 応答」であなたはもう一方の端のアプリケーションを確認することができます定義されていますか? –