2016-10-06 17 views
1

同じキューに複数のリスナを設定しようとしていますが、異なるメッセージセレクタを使用しています。私はSolace JMSプロバイダを使用しています。同一のキューに複数の異なるセレクタを持つ複数のリスナを持つSpring統合dsl

最初のロードされたリスナーにセレクタが登録され、メッセージを受信して​​いるという動作です。 2番目のリスナーはメッセージを受信して​​いません。 Springの統合を使用してDSL 1.1.3

何が間違っている可能性がありますか?

私は2つの異なるキュー接続ファクトリを試しましたが、動作させることができませんでした。

2つのセレクティブコンシューマを設定するにはどうすればよいですか?

+0

お返事ありがとうございます。 Solaceのキュー構成を調べました。 ExclusiveとNon-Exclusiveモードでキューを有効にするプロパティがありました。非排他モードに変更しました。これはそれを機能させた。アプリは異なる接続ファクトリを使用していますが。私はそれらに1つのConnectionファクトリを使用し、1つのアプリケーションで使用したいと考えています。私はまだそれをテストする必要があります。 – AnandW

答えて

0

ベンダーからまず始めて、コンシューマー・セレクティブ・コンシューマーをサポートしているかどうかを判断してください。

Queueでは、1つのコンシューマだけがメッセージを受け入れることに注意してください。したがって、最初のメッセージがメッセージを処理できる場合は、別のセレクタを使用してもメッセージを受信しません。

Topicに切り替えることを検討してください。

+0

FYI、私はactivemqでそれをテストしたところ、うまくいきました。 –

+0

合意されたArtem、私はjmsプロバイダの慰めのjmsに手を差し伸べています。これは、選択的な消費者パターンを実装するために、どのプロバイダでも基本的なキュールーティング機能と考えていました。要件は、キューの選択消費者が正しいアプローチであるように見えるヘッダー値に基づいてメッセージをルーティングすることです。 – AnandW

+0

Garyさん、activemqで確認してくれてありがとうございます。それは助けになった。私はDSLの設定を好きです、それは速く、エラーフリーです。ありがとう、 – AnandW

関連する問題