Cosminexus V9 アプリケーションサーバ 機能解説 基本・開発編(コンテナ共通機能)
アノテーション情報は,次のような操作を実行したときに読み込まれます。
アノテーション情報を読み込むためには,まずクラスをロードする必要があります。
アノテーション情報を読み込むためにロードするクラスを次の図に示します。
図12-2 アノテーション情報を読み込むためにロードするクラス
なお,EJB-JAR(ejb-jar.xmlのバージョンが2.1)に含まれるクラスファイルまたはWAR(web.xmlのバージョンが2.4)に含まれるクラスファイルからアノテーション情報を読み込む場合のアノテーションは,アプリケーションサーバ独自の仕様です。ただし,この機能は,旧バージョンとの互換機能です。詳細は,マニュアル「アプリケーションサーバ 機能解説 互換編」の「5.4 EJB 2.1とServlet 2.4でのアノテーションの利用」を参照してください。
なお,J2EE 1.4以前に準拠したJ2EEアプリケーションの場合,EJB-JAR(ejb-jar.xmlのバージョンが2.1,またはejb-jar.xmlが省略されたもの)やWAR(web.xmlのバージョンが2.4)からライブラリJARを使用することはできません。指定しても無視されます。
アノテーション情報を取得するためにクラスをロードするかどうかは,各モジュールのバージョン,およびDD内の属性定義に依存します。
モジュールのバージョンがEJB-JAR(3.0)またはWAR(2.5)の場合のアノテーション情報を取得するかどうかの条件を次の表に示します。
表12-3 モジュールのバージョンがEJB-JAR(3.0)またはWAR(2.5)の場合
モジュール | DDのmetadata-completeタグ | DD省略 | |
---|---|---|---|
falseまたはタグを省略 | true | ||
EJB-JAR(3.0) | ○ | − | ○ |
WAR(2.5) | ○ | − | ○ |
ライブラリJARのアノテーション情報を取得するかどうかを次の表に示します。
表12-4 ライブラリJARの場合
モジュール | Java EE 5以降に準拠するJ2EEアプリケーション | J2EE 1.4以前に準拠するJ2EEアプリケーション | ||||
---|---|---|---|---|---|---|
DDのmetadata-completeタグ | DD省略※ | DDのmetadata-completeタグ | DD省略 | |||
falseまたはタグを省略※ | true | falseまたはタグを省略 | true | |||
EJB-JAR(3.0) | ○ | − | ○ | × | × | − |
WAR(2.5) | ○ | − | ○ | × | × | × |
注※ プロパティejbserver.deploy.annotations.load_libjars.enabledの値にfalseが設定されている場合,ライブラリJARのクラス内のアノテーション情報を取得しません。
All Rights Reserved. Copyright (C) 2012, 2015, Hitachi, Ltd.