私は、異なるMDBクラスの異なるエンティティ(エンティティごとに1つのMDBクラス)としてメッセージを受け取るWildfly 8.2(デフォルトのHornetQを持つJMS)にキューを持っています。同様のメッセージの同じMDBインスタンス
私はJMSTypeを使用してエンティティAに関連するメッセージをMDB_Aに送信します。
今、私は、エンティティAの同じインスタンスに関連するすべてのメッセージがMDB_Aの同じインスタンスによって管理されることを望みます。私はキューにメッセージを挿入する前に、同じ値のJMSXGroupIDプロパティを設定します。
次に、MDBのidentifierとメッセージのJMSXGroupIDをMDBに出力します。同じJMSXGroupIDを持つメッセージは、異なるMDBによって管理されていることがわかります。
私はthisスレッドがこの問題をAciveMQで話していることを発見しましたが、私はHornetQを使用していますので、この場合の動作は分かりません。
は、そのスレッドでは答えはこの場合
たメッセージ・リスナーは、MDBコンテナではない 個々のMDBのインスタンスです。 MDBコンテナは、受け取ったメッセージを処理するためにmdb インスタンスを自由に選択することができます。JMSXGroupID はここでは意味がありません。
同じJMSXMessageIDを持つメッセージが異なるインスタンスによって処理される場合、このプロパティの目的は何ですか?メッセージのJMSTypeを設定するのと同じではありませんか?
セレクタなしでキューのメッセージのJMSXMessageIDを設定すると、複数のインスタンスを使用できる場合でも、すべてのメッセージを同じMDBインスタンスで処理できることがわかりました。
あなたの答えに感謝しますが、これは私にすべてのthそのタイプのeメッセージは同じインスタンスによって管理されますが、すべてのメッセージは同じMDBクラスのインスタンスによって管理されます。 – Wallkan