2011-12-05 14 views
1

MDBメッセージの処理をしばらく停止することはできますか?たとえば、メッセージ処理用のJboss 1デプロイ済みMDB。 Jboss 2:ユーザーの詳細を収集するためのビーンjboss 1のMDBがjboss 2のBeanを呼び出してユーザーの詳細を取得する場合この場合、Jboss 2を再起動するとき、jboss 2がUPになるまで、jboss 1のMDBを一時停止する必要があります。 MDBを一時停止するオプションがあるので、メッセージの失敗を回避できますか?MDBメッセージの一時停止

+0

を再開 - BarrierController/Barrierを選択し、MDBをBarrierに依存させるようにします。したがって、一時停止は、障壁の開始と停止を介して行うことができます。私はJBoss 7 ASでこの機能を直接置き換えることができませんでした。私はまだ見ています - どんな助けもありがとう! – pjklauser

答えて

1

アプリケーション全体を停止せずにMDBを停止できるのではないかと疑いがあります。 Spring JMSでは可能ですが、通常のメッセージ駆動型Beanでは使用できません。

可能なことは明らかに可能ですが、pausing a queueです。 HornetMQでは、キューを「受信専用モード」に切り替えることができますが、管理コンソールから使用できるかどうかはわかりません。

+0

ええ..キューを一時停止することができます。 –

+1

私はそれをどうするべきですか? – vairam

2

JBoss(4.xおよび5.x)では、JMXコンソールを使用してMDBを検索し、メッセージの配信を一時停止できます。ゴー左側のペイン右側のペインで

  • 中(8080 HTTPポートですhttp://yourserver:8080/jmx-console/)JMXコンソール

  • クリックjboss.j2ee

    1. 、検索してMDBをクリックしてください。通常、それは、一時停止、再開するには、次の「stopDelivery」
    2. 「起動」ボタンをクリックし、次への「startDelivery」
    「起動」ボタンをクリックし

  • jar=file-containing-your-MDB.jar,name=NameOfYourMDB,service=EJB3

    のようになります。
  • +0

    JBoss 7に相当するものがありますか? – pjklauser

    +0

    @pjklauser JBoss 7にはJMXコンソールにこれがありませんか?私はかつてこれを使ったことがない。 – GreenGiant

    0

    キューをHornetQで停止することができます。 (私は、JBoss Messagingのについてはよく分からないが、私はあなたがかなり確信している)メッセージの一時停止のための

    見て、あなたJMX Bean間の可能性がセットアップの依存関係JMXコンソールにJBoss4,5で

    関連する問題