19.3.1 コンテナ拡張ライブラリ利用の検討
処理の種類に応じて検討する方法と,処理の内容に応じて検討する方法について説明します。
- 〈この項の構成〉
(1) 処理の種類による検討
まず,処理を次の3種類に分類し,コンテナ拡張ライブラリを利用するかどうかを検討します。コンテナ拡張ライブラリを利用しない場合は,EJB-JARファイル,WARファイル,またはライブラリJARに共通のライブラリを含めます。
-
業務処理
業務ごとに処理が異なるため,EJB-JARファイル,またはWARファイルに含めます。コンテナ拡張ライブラリを利用する必要はありません。
-
EJB-JARファイルおよびWARファイル間の共通処理
複数のEJB-JARファイルやWARファイルに含まれる,Enterprise Bean,サーブレット,JSP,業務処理が共通に利用できる処理がある場合,ライブラリJARを利用します。ライブラリJARを利用できない場合は,共通処理のクラスを作成して,コンテナ拡張ライブラリを利用します。
-
EAR間の共通処理
複数のEARに含まれる,EJB-JAR,WARが共通に利用できる処理がある場合,ライブラリJARを利用します。ライブラリJARを利用できない場合は,共通処理のクラスを作成して,コンテナ拡張ライブラリを利用します。
(2) 処理の内容による検討
Enterprise Bean,サーブレット,JSPでの操作内容を次のように分類し,それぞれコンテナ拡張ライブラリを使用するかどうかを検討します。コンテナ拡張ライブラリを利用するかどうかの指針を次の表に示します。
操作内容 |
コンテナ拡張ライブラリ |
EJB-JARファイルまたはWARファイル |
ライブラリJAR |
---|---|---|---|
ファイルやディレクトリへのアクセス操作 |
○ |
× |
× |
JNIの利用による操作※ |
○ |
× |
× |
スマートエージェント経由のCORBAオブジェクトの呼び出し |
○ |
× |
× |
J2EEコンテナ機能の操作 |
× |
○ |
× |
EJB-JARファイルおよびWARファイル内のクラス参照 |
× |
− |
× |
- 注意事項
-
コンテナ拡張ライブラリには,次のアクセス権が付与されます。アクセス権は変更できません。
java.security.AllPermission
ただし,java.lang.RuntimePermissionのsetSecurityManagerアクセス権は付与されません。