パッケージ jakarta.resource.spi
インターフェース ResourceAdapter
public interface ResourceAdapter
これはリソースアダプターインスタンスを表し、ライフサイクル管理とメッセージエンドポイントのセットアップのための操作が含まれています。このインターフェースの具体的な実装は、JavaBean である必要があります。- バージョン:
- 1.0
- 作成者:
- Ram Jeyaraman
メソッドのサマリー
すべてのメソッド インスタンスメソッド 抽象メソッド 修飾子と型 メソッド 説明 void
endpointActivation(MessageEndpointFactory endpointFactory, ActivationSpec spec)
これは、メッセージエンドポイントのアクティブ化中に呼び出されます。void
endpointDeactivation(MessageEndpointFactory endpointFactory, ActivationSpec spec)
これは、メッセージエンドポイントが非アクティブ化されたときに呼び出されます。XAResourceSE[]
getXAResources(ActivationSpec[] specs)
このメソッドは、クラッシュリカバリ中にアプリケーションサーバーによって呼び出されます。void
start(BootstrapContext ctx)
これは、リソースアダプターインスタンスがブートストラップされるときに呼び出されます。void
stop()
これは、リソースアダプターインスタンスがアンデプロイされたとき、またはアプリケーションサーバーのシャットダウン中に呼び出されます。
メソッドの詳細
start
void start(BootstrapContext ctx) throws ResourceAdapterInternalException
これは、リソースアダプターインスタンスがブートストラップされるときに呼び出されます。これは、リソースアダプターデプロイまたはアプリケーションサーバーの起動中の可能性があります。これはアプリケーションサーバーからの起動通知であり、このメソッドはアプリケーションサーバースレッドによって呼び出されます。アプリケーションサーバースレッドは、不特定のコンテキストで実行されます。このメソッドの呼び出し中に、ResourceAdapter JavaBean がリソースアダプターインスタンスの初期化を担当します。このメソッド呼び出し中に例外がスローされると、アプリケーションサーバーはこの特定のリソースアダプターインスタンスのブートストラップ手順を中止します。
- パラメーター:
ctx
- リソースアダプターインスタンスで使用できる便利な機能への参照を含むブートストラップコンテキスト。- 例外:
ResourceAdapterInternalException
- ブートストラップの失敗を示します。リソースアダプターインスタンスは使用できないため、破棄する必要があります。
stop
void stop()
これは、リソースアダプターインスタンスがアンデプロイされたとき、またはアプリケーションサーバーのシャットダウン中に呼び出されます。これはアプリケーションサーバーからのシャットダウン通知であり、このメソッドはアプリケーションサーバースレッドによって呼び出されます。アプリケーションサーバースレッドは、不特定のコンテキストで実行されます。このメソッド呼び出し中に、ResourceAdapter JavaBean は、リソースアダプターインスタンスの正常なシャットダウンを実行します。このメソッド呼び出しによってスローされた例外は、このメソッド呼び出しの原因となったアプリケーションサーバーのシャットダウンまたはリソースアダプターのアンデプロイの処理を変更しません。アプリケーションサーバーは、エラー報告のために例外情報をログに記録する場合があります。
endpointActivation
void endpointActivation(MessageEndpointFactory endpointFactory, ActivationSpec spec) throws ResourceException
これは、メッセージエンドポイントのアクティブ化中に呼び出されます。これにより、リソースアダプターインスタンスが必要な設定(つまり、メッセージプロバイダを使用したメッセージエンドポイントのメッセージ配信の設定)を実行します。このメソッドが戻る前でも、メッセージエンドポイントへのメッセージ配信が開始される場合があることに注意してください。エンドポイントのアクティブ化は、このメソッドが例外をスローせずに正常に完了した場合にのみ成功したと見なされます。
- パラメーター:
endpointFactory
- メッセージエンドポイントファクトリインスタンス。spec
- アクティベーションスペック JavaBean インスタンス。- 例外:
NotSupportedException
- 不正なアクティベーション設定情報によるメッセージエンドポイントアクティベーション拒否を示します。ResourceException
endpointDeactivation
void endpointDeactivation(MessageEndpointFactory endpointFactory, ActivationSpec spec)
これは、メッセージエンドポイントが非アクティブ化されたときに呼び出されます。このメソッド呼び出しに引数として渡されるインスタンスは、対応するendpointActivation
呼び出しに渡されるインスタンスと同じである必要があります。これにより、リソースアダプターはメッセージエンドポイントへのメッセージの配信を停止します。このメソッドによってスローされた例外はすべて無視されます。このメソッド呼び出しの後、エンドポイントは非アクティブと見なされます。
- パラメーター:
endpointFactory
- メッセージエンドポイントファクトリインスタンス。spec
- アクティベーションスペック JavaBean インスタンス。
getXAResources
XAResourceSE[] getXAResources(ActivationSpec[] specs) throws ResourceException
このメソッドは、クラッシュリカバリ中にアプリケーションサーバーによって呼び出されます。このメソッドは、ActivationSpec
JavaBeans の配列を受け取り、それぞれが一意のリソースマネージャーを表すXAResource
オブジェクトの配列を返します。リソースアダプターは、XAResource
インターフェースを実装していない場合、null を返す場合があります。それ以外の場合は、XAResource
オブジェクトの配列を返す必要があります。各オブジェクトは、エンドポイントアプリケーションによって使用された一意のリソースマネージャーを表します。アプリケーションサーバーは、XAResource
オブジェクトを使用して、未確定トランザクションのリストについて各リソースマネージャーにクエリを実行します。次に、関与しているリソースマネージャーにコミットの決定を送信することにより、保留中の各トランザクションを完了します。- パラメーター:
specs
-ActivationSpec
JavaBeans の配列。それぞれがシステムクラッシュの前にアクティブであったデプロイされたエンドポイントアプリケーションに対応します。- 戻り値:
XAResource
オブジェクトの配列。それぞれが一意のリソースマネージャーを表します。- 例外:
ResourceException
- エラー条件のために操作が失敗した場合の一般的な例外。