問題タブ [jboss-mdb]
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.
java - 多くの一意のMDBのインスタンスを設定する方法
Spring3.1を使用しています
それをリッスンするHornetQとMDBを構成しました。
私の目標は、それらのMDBSに、固有のプロパティを持つプロパティクラスを注入することです。
各MDBには独自のプロパティがあります
試してみるとすぐに例外が発生します。
それが私のコードです:
MDB:
}
それはFeedPropertiesDTOです:
これが私のアプリケーションコンテキストBeanの設定です。
このようにして、アプリケーションコンテキストからMDBSを構成し、コードに触れることなく将来的に新しいMDBSを追加できるようになります。
しかし、私はこのエラーを受け取ります:
必要なことをどのように達成できるか考えていますか?
ありがとう、レイ。
jms - MDBのスケジューリング
MDBをスケジュールする方法を探しています。私の要件は、MDBが会社からシステムにフィードするように設定されていることです。このシステムは毎晩メンテナンスのために出かけますが、他のシステムはそれを知らず、それを供給しようとし続けるかもしれません。永続キューは、システムがオンラインに戻るまでメッセージがピルされる可能性があるという点で優れています。
どうすればそれを管理できますか?私はすでにそれに遭遇しました:特定の時間にキューにアクセスするようにメッセージ駆動型Beanをスケジュールしますか?ただし、Java 7を使用し、最悪の場合、サーバーが再起動するとメッセージが失われます(メッセージはJMSキューから取り出され、タイマーが処理するまでメモリに保持されます)。
これの別の使用法は、「再試行」キューを実装することです。エラーが発生した場合は、メッセージの処理を再試行しますが、一定の時間が経過した後、すぐには再試行しません。
MDBを一定時間オフラインに保つためのアイデアはありますか?
java - メッセージ駆動型Beanはjava.lang.Errorを飲み込みます
これは非常に奇妙な動作です。NoSuchMethodException
(コンパイルライブラリとランタイムライブラリのバージョンが一致しなかったため)があり、コンテナがそれを飲み込んだため、キャッチする機会がありませんでした。このコードを見てください:
このコードは、JSON形式のテキストメッセージを聞くことを目的としていますが、受信するたびにポイントIDを取得することはありません。
この時点以降、ログを受信しませんでした...
後で、このコードを@Asynchronous
メソッド内の別のステートレスEJBに移動し、MDBから呼び出しました。それから私は例外を受け取りました:
MDBにいる間、例外を受け取らなかったのはなぜですか?
アプリケーションサーバー:Glassfish 3.1.1
java - MDB からのキューの一時停止
を使用しているアプリケーションJMS Queue
とMDB
. MDB
一度にからに送信されるメッセージは 1 つだけにしてくださいQueue
。MDB
つまり、は からメッセージを受け取るとすぐにQueue
を中断しQueue
、処理が終了しQueue
たら を再開する必要があります。でこれのコードを書くことはできますか、MDB
または で作成できる構成はありますejb-jar.xml
か?
jboss - MDB によるクライアント ack
私の知る限り、MDB で可能なのは AUTO_ACKNOWLEDGE と DUPS_OK_ACKNOWLEDGE だけです。XA トランザクションを回避するために、CLIENT_ACKNOWLEDGE のようなものが必要です。
基本的に私が欲しいもの:メッセージを取得する->ローカルトランザクションを開始する->データベース操作を実行する->ローカルトランザクションを終了する->メッセージを確認する
これを達成する方法を知っていますか?
現在、Jboss 5.1.GA を使用しています。
jms - 長時間実行される Java EE ジョブを起動するには?
長時間実行されるバッチ タイプのジョブを開始する必要があります。長い間、数時間かかる可能性のあるジョブについて話しています。この長時間実行されるジョブを実行するロジックを持つ ejb は、NoSQL ストアと通信し、データなどをロードします。
そのため、JMS MDB を使用してこれを非同期的に実行しています。ただし、各ジョブには最大 1 時間以上かかる可能性があるため (最大 4 時間と仮定します)、MDB の onMessage() メソッドをそれほど長く待機させたくありません。そこで、onMessage() MDB メソッド内で非同期 ejb を起動して、バッチ ejb ランナーへの呼び出しの直後に MDB をプールに戻すことを考えていました。
非同期の ejb メソッド呼び出しを MDB と組み合わせることは理にかなっていますか? ほとんどのサンプルは、どちらか一方を使用して同じことを達成することを提案しています。
MDB から呼び出される ejb が非同期でない場合、MDB は長時間待機する可能性があります。
お知らせ下さい。
jboss - JBoss6 MDBはデプロイに失敗しますが、JBoss4.0.4では正常にデプロイされます
JBoss-4.0.4.GA環境にあるjarをJBoss-6.0.0.Final環境にデプロイしようとしています。よくわからない問題が発生しました。JBossを起動すると、次のエラーが発生します。
ejb2.1を使用しています。
デプロイメント記述子には、JBoss 4.0.4が許容できるものがあり、JBoss6はそれほど許容できないものがあると思います。
META-INF / ejb-jar.xml
そしてMETA-INF/jboss.xml:
私のデプロイメント記述子はxdocletによって生成されます。
助けてくれてありがとう。
jms - 2 つの方法で MDB 例外を処理するために助けが必要
メッセージの処理中に 2 つの異なるタイプの問題を処理しようとしています。
最初の問題は、リモート データベースがダウンしている場合です。その場合、メッセージは処理を停止し、後で再試行する必要があります。このメッセージは決して DLQ に送られるべきではなく、リモート データベースが稼働するまで試行を続ける必要があります。
2 番目の問題は、メッセージに問題がある場合です。その場合は、DLQ に送信する必要があります。
次のコードをどのように構成すればよいですか?
jboss - hornetq を使用した jboss で大幅な遅延が発生した後にメッセージが消費される
奇妙な問題があります。jboss 6.1 final AS 7 にアップグレードした後、1 日遅れて hornet キュー リスナーが起動します。キューに最大制限を超えるデータがあるため、データは jboss によってページングされていることがわかります。しかし、なぜメッセージの消費が遅れるのでしょうか?
助けてください...