Cosminexus V9 アプリケーションサーバ 機能解説 基本・開発編(コンテナ共通機能)
ここでは,Connector 1.5仕様に準拠したリソースアダプタを使用する場合のJ2EEアプリケーションとリソースアダプタの設定について説明します。
設定は,それぞれアプリケーション統合属性ファイル※とConnector属性ファイルに指定します。
Connector 1.5仕様に準拠したリソースアダプタを使用する場合に設定できる項目について説明します。
J2EEアプリケーションに設定できる内容を次の表に示します。
表3-67 J2EEアプリケーションの設定(Connector 1.5仕様に準拠するリソースアダプタを使用する場合)
機能 | 項目 | 対象 | 設定内容 |
---|---|---|---|
管理対象オブジェクトのルックアップ | 管理対象オブジェクトのルックアップで使用する情報 | WAR,Session Bean,Entity Bean,Message-driven Bean | <resource-env-ref>タグ下の次のタグに設定します。
|
メッセージインフロー※ | リソースアダプタとの対応づけ | Message-driven Bean | <message-ref>−<connection-destination>タグ下の<resource-adapter>タグに,対応づけるリソースアダプタの表示名を指定します。 |
Message-driven Beanが使用するインタフェース | Message-driven Bean | <messaging-type>タグに,Message-driven Beanが実装するインタフェースを指定します。 | |
ActivationSpecの設定 | Message-driven Bean | <activation-config>−<activation-config-property>タグ下の<activation-config-property-name>タグおよび<activation-config-property-value>タグに,ActivationSpecに設定するプロパティを指定します。 |
注※ 設定値の一部は,使用するリソースアダプタの設定値と合わせる必要があります。
リソースアダプタのプロパティとして設定する項目のうち,Connector 1.5仕様に準拠したリソースアダプタで設定できる主な項目と,その項目の設定方法について説明します。なお,ここでは,Connector 1.5仕様に準拠したリソース固有の内容を説明します。
Connector 1.5仕様に準拠したリソースアダプタのプロパティとして設定できる内容を次の表に示します。
表3-68 Connector 1.5仕様に準拠したリソースアダプタのプロパティ定義で設定できる内容
分類 | 項目 | 設定内容 |
---|---|---|
管理対象オブジェクト | 管理対象オブジェクト名※1 | <adminobject>−<adminobject-name>タグ※2にルックアップで使用するオブジェクト名を指定します。管理対象オブジェクトをルックアップの対象にする場合は必ず指定してください。オブジェクト名には,連続したアンダースコア"__"を含めてはいけません。 なお,管理対象オブジェクトをルックアップする場合には,J2EEアプリケーションの設定も必要です。「(a) J2EEアプリケーションの設定」を参照してください。 |
インタフェース | <adminobject>−<adminobject-interface>タグに使用するインタフェースを指定します。javax.jms.Queue,javax.jms.Topicなどを指定します。 | |
実装クラスとプロパティ | <adminobject-class>タグに実装クラスを指定します。 <config-property>タグ下に管理対象オブジェクトのプロパティを設定します。 |
注※1 メッセージインフローで使用する管理対象オブジェクトの場合,指定する必要はありません。
注※2 DD(ra.xml)には存在しないタグです。
メッセージインフローで使用する管理対象オブジェクトの設定は,Connector属性ファイルに記述します。
管理対象オブジェクトに設定する内容は,リソースアダプタに依存します。使用するリソースアダプタのドキュメントを参照してください。
管理対象オブジェクトは,Message-driven Beanと対応づけて使用します。対応づけについては,「(5) ActivationSpecの設定」を参照してください。
Message-driven Beanとリソースアダプタの対応づけは,アプリケーション統合属性ファイルの<resource-adapter>タグに指定します。リソースアダプタの表示名を指定してください。
<resource-adapter>の階層を次に示します。
<hitachi-message-bean-property> <message-ref> <connection-destination> <resource-adapter> |
これらのタグは,DD(ejb-jar.xml)には存在しない要素です。ただし,<hitachi-message-bean-property>はDDの<message-driven>に対応します。
リソースアダプタとの対応づけは,Message-driven Beanを含むJ2EEアプリケーションを開始したときに実行されます。なお,次の場合には,Message-driven Beanを含むJ2EEアプリケーションの開始が失敗します。この場合は,KDJE42359-Eのメッセージが出力されます。
Message-driven Beanは,管理対象オブジェクトとも対応づける必要があります。対応づけについては,「(5) ActivationSpecの設定」を参照してください。
Message-driven Beanが使用するインタフェースは,アプリケーション統合属性ファイルの<messaging-type>タグに記述します。Message-driven Beanが実装するインタフェース名を指定してください。
<messaging-type>の階層を次に示します。
<hitachi-message-bean-property> <messaging-type> |
<hitachi-message-bean-property>はDD(ejb-jar.xml)の<message-driven>に対応します。
Message-driven Beanが使用するインタフェースには,リソースアダプタがサポートしているインタフェースを指定する必要があります。リソースアダプタがサポートするインタフェースは,リソースアダプタのDD(ra.xml)の<messagelistener-type>タグに指定されています。このタグに指定されている以外のインタフェースを指定した場合は,Message-driven Beanを含むJ2EEアプリケーションの起動が失敗します。この場合は,KDJE43167-Eのメッセージが出力されます。
リソースアダプタがサポートしているインタフェースは,サーバ管理コマンドの次のコマンドでも確認できます。これらのコマンドの引数に,-resnameおよび-inboundを指定して実行してください。
なお,<messaging-type>タグの指定を省略した場合は,デフォルト値としてjavax.jms.MessageListenerインタフェースが使用されます。
ActivationSpecとは,Message-driven Beanを活性化するために必要な設定を持つJavaBeansです。ActivationSpecには,リソースアダプタの設定に合わせて設定が必要なプロパティがあります。
ActivationSpecに設定する値は,アプリケーション統合属性ファイルの<activation-config>タグ下に記述します。プロパティ名とプロパティ値を指定してください。複数指定できます。
<activation-config>の階層を次に示します。
<hitachi-message-bean-property> <activation-config> <activation-config-property> <activation-config-property-name> <activation-config-property-value> |
ActivationSpecについてのデフォルトの設定値は,リソースアダプタのDD(ra.xml)に設定できます。<resourceadapter>−<config-property>タグに設定した値が,デフォルト値として使用されます。デフォルト値を記載している場合にアプリケーション統合属性ファイルでActivationSpecの値を設定したときには,<hitachi-message-bean-property>タグ下で指定した値で上書きされます。
ActivationSpecのプロパティとして必ず設定しなくてはいけないプロパティについては,「(b) 設定が必要なプロパティ」で説明します。
ActivationSpecの設定では,リソースアダプタのDD(ra.xml)の<activationspec>−<required-config-property>タグに指定されているプロパティの値を設定する必要があります。設定が必要なプロパティは,サーバ管理コマンドの次のコマンドでも確認できます。これらのコマンドの引数に,-resnameおよび-listenertypeを指定して実行してください。
このほか,ActivationSpecに設定できるプロパティはリソースアダプタに依存します。使用するリソースアダプタのドキュメントを参照してください。
JMSをサポートするメッセージリスナ(javax.jms.MessageListenerインタフェースを使用するメッセージリスナ)を使用する場合,ActivationSpecに次のプロパティが必要です。<activation-config>タグ下に指定してください。
なお,アプリケーションサーバでは,これらのプロパティが指定されているかどうかのチェックは実施されません。プロパティ設定が適切かどうかは,リソースアダプタが提供するActivationSpec#validateメソッドで確認してください。
JMSをサポートするメッセージリスナを使用する場合のActivationSpec仕様の詳細については,Connector 1.5仕様のドキュメントを参照してください。
ActivationSpecを生成,設定するときに,次の表に示す状態になった場合,エラーが発生します。エラーが発生すると,J2EEアプリケーションの開始は失敗します。
エラーが発生する場合と出力されるメッセージを次の表に示します。
表3-69 エラーが発生する場合と出力されるメッセージの対応
エラーが発生する場合 | 出力されるメッセージ |
---|---|
ActivationSpecの実装クラスのインスタンス生成に失敗した場合 | KDJE43168-E |
ActivationSpecに指定したクラスがjavax.resource.spi.ActivationSpecインタフェースを実装していなかった場合 | KDJE43172-E |
<activation-config-property-name>タグに対応するプロパティのsetterメソッドが,ActivationSpecにない場合 | KDJE43169-E |
ActivationSpecに各プロパティを設定したあとで,設定が適切であるかをチェックするメソッド(ActivationSpec#validateメソッド)の呼び出しで例外がスローされた場合 | KDJE43170-E |
リソースアダプタのDD(ra.xml)で指定したプロパティ<required-config-property>タグに対応する設定項目が,アプリケーション統合属性ファイルの<activation-config>タグとして記述されていない場合 | KDJE43171-E |
ActivationSpecのsetResourceAdapterメソッドで例外がスローされた場合※ | KDJE43173-E |
注※ setResourceAdapterメソッドはjavax.resource.spi.ResourceAdapterAssociationインタフェースで定義するメソッドです。javax.resource.spi.ResourceAdapterAssociationインタフェースは,javax.resource.spi.ActivationSpecインタフェースのスーパーインタフェースです。
All Rights Reserved. Copyright (C) 2012, 2015, Hitachi, Ltd.