Cosminexus V9 アプリケーションサーバ 機能解説 基本・開発編(コンテナ共通機能)
2.4.1 JNDI名前空間の種類
Java EEで定義されているJNDI名前空間の種類とルックアップできる範囲について説明します。
JNDI名前空間の範囲を次の図に示します。
図2-4 JNDI名前空間の範囲
- java:global
すべてのJ2EEアプリケーションで共有される名前空間です。アプリケーションサーバでは,同じCORBAネーミングサービスを利用するすべてのJ2EEサーバまたはEJBクライアントアプリケーションで共有されます。
- java:app
J2EEアプリケーション内で共有される名前空間です。一つのJ2EEアプリケーション内のすべてのコンポーネント(Enterprise Bean,サーブレット,JSP,フィルタ,およびリソースアダプタ)で共有されます。
- java:module
各種モジュール(EJB-JAR,Webアプリケーションまたはリソースアダプタ)内で共有される名前空間です。一つのモジュール内のすべてのコンポーネント(Enterprise Bean,サーブレット,JSP,フィルタ,およびリソースアダプタ)で共有されます。
- java:comp
各種コンポーネント(Enterprise Bean,サーブレット,JSP,フィルタ,またはリソースアダプタ)内で共有される名前空間です。一つのコンポーネント内でだけ共有されます。ただし,Webアプリケーションの場合は,Webアプリケーション内のすべてのサーブレットまたはJSPで共有されます。
ルックアップ対象のコンポーネントがルックアップ元と同じプロセス,アプリケーション,モジュールまたはコンポーネントに含まれているかによって,使用できる名前空間が異なります。ルックアップするコンポーネントとの関係と,名前空間ごとのルックアップ可否を次の表に示します。
表2-9 名前空間ごとのルックアップ可否
項番 |
ルックアップするコンポーネントとの関係 |
ルックアップする名前空間 |
サーバ(プロセス) |
アプリケーション |
モジュール |
コンポーネント |
java:global |
java:app |
java:module |
java:comp |
1 |
同じ |
同じ |
同じ |
同じ |
○ |
○ |
○ |
○ |
2 |
同じ |
同じ |
同じ |
異なる |
○ |
○ |
○ |
△※1 |
3 |
同じ |
同じ |
異なる |
異なる |
○ |
○ |
× |
× |
4 |
同じ |
異なる |
異なる |
異なる |
○ |
× |
× |
× |
5 |
異なる※2 |
異なる |
異なる |
異なる |
○※3 |
× |
× |
× |
- (凡例)
- ○:ルックアップできる。
- △:コンポーネントの種類によってルックアップできる。
- ×:ルックアップできない。
- 注※1
- Webアプリケーション内のコンポーネント(サーブレット,JSPまたはフィルタ)の場合,ルックアップできます。
- 注※2
- サーバ(プロセス)は異なるが,同一のCORBAネーミングサービスを利用している場合を指します。EJBクライアントアプリケーションからJ2EEサーバ内のJ2EEアプリケーションをルックアップする場合を含みます。
- 注※3
- 自動的にバインドされるEJBのリファレンスだけルックアップできます(アプリケーションサーバ独自の仕様)。
All Rights Reserved. Copyright (C) 2012, 2015, Hitachi, Ltd.