ユーザーズ ガイド

     前  次    新しいウィンドウで目次を開く     
ここから内容

Java コールアウトおよび POJO を使用した拡張性

組織内の AquaLogic Service Bus の機能を拡張できるようにするために、プロキシ サービス内からカスタム Java コードを呼び出すことができます。AquaLogic Service Bus では、POJO (Plain Old Java Object、通常の従来型 Java オブジェクト) へのコールアウトを可能にする「Java コールアウト」アクションを使用した「Java 終了メカニズム」がサポートされます。POJO からは静的メソッドにアクセスすることが可能です。POJO およびそのパラメータは、設計時に AquaLogic Service Bus Console に表示されます。このパラメータは、メッセージ コンテキスト変数にマップできます。

POJO への Java コールアウトのコンフィグレーションについては、『AquaLogic Service Bus Console の使い方』の「プロキシ サービス : アクション」にある「Java コールアウト」を参照してください

 


使用方法のガイドライン

AquaLogic Service Bus で POJO への Java コールアウトを使用できるシナリオは以下のとおりです。

エンタープライズ JavaBean (EJB) も Java 終了メカニズムを提供します。以下の場合は、POJO ではなく、EJB を使用することをお勧めします。

発信メッセージには、POJO または EJB を使用する代わりにカスタム転送を記述することをお勧めします。

 


ベスト プラクティス

POJO は、JAR リソースとして AquaLogic Service Bus に登録されます。JAR リソースについては、『AquaLogic Service Bus Console の使い方』の「JAR」を参照してください

通常、JAR はサイズを小さくし、簡単なものにすることをお勧めします。JAR が呼び出すサイズの大きいコードまたは使用される大きなフレームワークは、システム クラスパスに含めることをお勧めします。システム クラスパスを変更する場合は、サーバを再起動する必要があります。

独立したクラスおよび重複するクラスは、同じ JAR リソースに含め、性質上区別されるクラスは異なる JAR に含めることをお勧めします。JAR を変更するとその JAR を参照するすべてのサービスが再デプロイされます。これは AquaLogic Service Bus にとって多大な時間を必要とします。同じクラスを、衝突させずに複数の JAR リソースに配置できます。JAR は、最初に参照されたときに、動的にクラス ロードされます。

1 つまたは複数のプロキシ サービスで、単一の POJO を呼び出せます。プロキシ サービスのすべてのスレッドが同じ POJO を呼び出します。そのため、POJO はスレッド セーフであることが必要です。POJO のクラスまたはメソッドは同期できます。この場合、呼び出しを行うすべてのプロキシ サービスのすべてのスレッドによるアクセスを順序付けします。POJO コードによって、任意のより詳細な並行処理 (たとえば、データベース読み込みの結果キャッシュへのアクセスの制御や、古いキャッシュ エントリ処理の実装) を実装する必要があります。

通常、POJO の場合、スレッドの作成は推奨されません。


  ページの先頭       前  次