0

EJB 3Web サービスとしても公開されている Stateless Bean を使用したシステムがあります。

他のチームから、呼び出し後に (Web サービスまたはその他の手段で) システムが他のシステムに通知を送信するようにするという統合要求があります。これは私たちのシステムに完全に関連しているわけではないので、これらの機能をシステムコードにハードコーディングするのではなく、この機能を私たち自身のシステムと緩やかに結合させたいと思います.

私が望むものを実現できるEJBまたはWebサービスの機能はありますか? EJB メソッド/Web サービスが呼び出されたときにコールバック/メッセージをトリガーできるように、メソッド レベルの呼び出しリスナーが必要です。JMSなどを設定するための何らかの注釈/構成になると思います。

アプリケーションサーバーとして JBoss を使用しています。JBoss 固有のソリューションがあれば、それも歓迎します。

4

1 に答える 1

2

私は2つのオプションを提案します:

  • JMS を使用します。疎結合について言及したとき、JMS が最初に頭に浮かびました。メソッドの呼び出し後にキュー/トピックにメッセージを配置し、リスナーにさらにアクションを実行させることができます。JMS メッセージは、さまざまな種類のオブジェクトを運ぶことができます。唯一の要求は、クラスが Serializable ( ObjectMessage#setObject ) を実装することです。他の利点は、ステートレス Bean と他のシステムを個別にデプロイ (アン) できることです。それらは異なる JVM 上にある可能性があります。

  • インターセプターを使用します。技術的には、メソッドが実行される前に呼び出されますが、もちろん常にいくつかの優れた回避策があります:-)インターセプターに関する公式ドキュメントを次に示しますが、JBoss を使用していると述べたので、いくつかの興味深い資料も見つけることができます。JBoss ページで。

于 2012-12-04T08:28:54.950 に答える