問題タブ [spring-jms]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
spring - Spring JMS と ActiveMQ を使用するための正しい Maven 依存関係は何ですか?
これは非常に一般的な問題であり、Web 上でうまくいかない解決策をたくさん見つけました。私は宣言しています:
そして桟橋プラグイン
しかし、「mvn jetty:run」を発行すると、次の例外が引き続き発生します。
org.springframework.beans.FatalBeanException: 名前空間 [http://activemq.apache.org/schema/core] の NamespaceHandler クラス [org.apache.xbean.spring.context.v2.XBeanNamespaceHandler] が見つかりません。ネストされた例外は java.lang.ClassNotFoundException: org.apache.xbean.spring.context.v2.XBeanNamespaceHandler です
Jetty、ActiveMQ、および Spring JMS を実行するための正しい Maven 依存関係は何でしょうか?
java - DefaultMessageListenerContainer がスケーリングしない
(私の意見では) スケールアップしていない DefaultMessageListenerContainer があります。コンテナは、100 個のメッセージが格納されているキューをリッスンするように定義されています。
コンテナが任意の長さになり、メッセージが可能な限り速く消費されることを期待します( maxConcurrentConsumers 構成を観察することにより)。だから私は、7つのconcurrentConsumersがあると仮定します。(コンテナの起動時に2つのconcurrentConsumersから開始)いくつかのログ情報:
私のSpring-config(その一部):
マイ ロギング コンテナ
私のリスナークラス:
誰かが私の構成を修正したり、構成に関するヒントを教えたり、コンテナのアプローチを説明したりしてくれませんか? (私が何かを誤解していた場合)
スケーラビリティのトピックに関連する場合は、ActiveMQ (WebSphere MQ を使用した運用環境) を使用してローカルでテストしています。
編集:
spring - キュー コンシューマーの Spring JMS 構成
Spring JMS + ActiveMQ を学習するための非常に基本的なアプリケーションを実行しようとしています。Producer がメッセージ (sysout) を作成していることがわかりますが、Consumer には何も表示されず、例外もスローされません。ここで単純なものが欠けていると思います。本当に助けていただければ幸いです。
[編集済み、次のコードが機能します]
プロデューサー:
消費者:
プロデューサーの構成:
コンシューマー構成:
テストケース:
Spring MVC アプリケーションも実行される Java EE コンテナー (mvn jetty:run) 内でプロデューサーを実行します。
ibm-mq - Spring JMS の永続的なサブスクリプションの再登録
Spring JMS (v3.1.0) を使用してトピック (IBM WebSphere MQ v7) からいくつかのメッセージを消費するアプリケーションに取り組んでおり、MQ の監視では、リスナーの呼び出しごとに更新/再登録することが示されています永続的なサブスクリプション。これにより、MQ で望ましくない過負荷が発生しています。アプリが IBM WepSphere v7 で実行されていることにも言及する価値があります。
これは私たちの設定です:
編集:これらは私たちが使用しているプロパティです:
それを解決する方法はありますか?ありがとう!アンドレ
jms - weblogic JMS キュー メッセージが例外でロールバックされない
以下は、Spring JMS を使用するメッセージ リスナ コードです。MessageProducer は ClientAcknowledgeMode に設定されます。例外が発生した場合、メッセージは引き続きキューから移動され、ロールバックされます。以下のコードに何か問題がありますか?
以下はSpring構成です
glassfish - 例外後の再配信のためのグラスフィッシュの春のデフォルトメッセージリスナーコンテナの適切なセットアップは何ですか?
例外がスローされた後、または session.rollback() が呼び出された後に、Spring の DefaultMessageListenerContainer クラスをセットアップしてメッセージを再配信しようとしています。また、これを Glassfish 3.1.2 Web プロファイルで実行しようとしています。
SessionAwareMessageListener の onMessage() メソッドで session.rollback() を呼び出すと、次のようなメッセージで例外が発生します: MessageDispatcher - [C4024]: セッションは処理されません。 ActiveMQ ではこの問題は見られませんが、もちろん、アプリケーション サーバーで使用していないため、その構成は異なります。
ここで誰かがこれを機能させましたか?私の構成は次のとおりです。
spring - Spring JmsTemplate で JMS メッセージを送信する
別のアプリケーションにメッセージを送信する必要があるサーバーがあります。私は Spring JmsTemplate を使用していますが、構成を起動して実行する際にいくつか問題があります。
現在、次の例外が発生しています。
(必要に応じて完全なスタック トレースを投稿できますが、ネストされた例外の長いバージョンにすぎません。)
「受信タイムアウト」の部分は、メッセージを受信しようとしているように聞こえますが、これは望ましくありません。ここにあるものはすべて、いくつかの異なる例と SO の投稿からまとめたものであり、さまざまな部分とそれらが何をしているのかについて頭を悩ませています。エラーの原因に加えて、メッセージを受信しない場合に必要のないものはありますか?
私の JmsQueueSender クラス (メッセージを送信します):
私のアプリケーションコンテキストでは:
jms - Web コンソール例外: 1 つの設定済み URL のいずれにもブローカーが見つかりません
ここに示すように、tomee+ 1.5.0 で Web コンソールを起動しようとしています: http://activemq.apache.org/web-console.html (Tomcat を使用した構成例)
サーバーの起動時に次のパラメーターを使用します。
-Dcatalina.base="D:\Kit\apache-tomee-plus-1.5.0" -Dcatalina.home="D:\Kit\apache-tomee-plus-1.5.0" -Dwtp.deploy="D: \Kit\apache-tomee-plus-1.5.0\wtpwebapps" -Djava.endorsed.dirs="D:\Kit\apache-tomee-plus-1.5.0\endorsed" -Dwebconsole.type=properties -Dwebconsole.jms .url=tcp://localhost:61616 -Dwebconsole.jmx.url=service:jmx:rmi:///jndi/rmi://localhost:1099/jmxrmi -Dwebconsole.jmx.user=tomee -Dwebconsole.jmx. password=tomee -Dcom.sun.management.jmxremote=true -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.port=1099
jconsole に接続できますがservice:jmx:rmi:///jndi/rmi://localhost:1099/jmxrmi
、MBean に「org.apache.activemq」が表示されません。で Web コンソールにアクセスしようとすると、
http://localhost:8080/activemq-web-console-5.7.0/
次の例外が発生し続けます。
これは、Web コンソール戦争の activemq.xml ファイル内のブローカーです。
誰かがこの問題に関するヒントを教えてくれますか?
java - DefaultMessageListenerContainer、sessionTransactedプロパティを機能させますか?
DefaultMessageListenerContainerにトランザクションを制御させるための手順はどうですか...私が読んだ限りでは、DMLCにsessionTransactedプロパティを提供するだけで済みます。私の目標は、エラーが発生した場合にメッセージをキューに戻すことです...
かなり長い間検索してきましたが、何も見つかりませんでした...
私のSpring-config(その一部):
私のリスナークラス:
チェックされていない例外(java.lang.IllegalStateExceptionなど)をスローするだけですか?
java - 同じonMessageを使用する複数のMessageListenersによるスレッドセーフ?
2 つのリスナー コンテナーを確実にするにはどうすればよいですか。
さまざまなトピックからメッセージを受け取ります。スレッドセーフですか?
ご覧のとおり、他の Spring Bean にも依存している同じメッセージ リスナーを使用しています。すべてのメッセージは、同じクラスの同じ onMessage メソッドによって受信されます。
この種の問題のベストプラクティスについて誰かがアドバイスしてくれますか? 両方のトピックからのメッセージを同じ方法で処理する必要があるため、必要な MessageListener は 1 つだけです。
ありがとう