JavaTM 2 Platform
Standard Ed. 5.0

javax.naming
クラス InitialContext

java.lang.Object
  上位を拡張 javax.naming.InitialContext
すべての実装されたインタフェース:
Context
直系の既知のサブクラス:
InitialDirContext

public class InitialContext
extends Object
implements Context

このクラスは、ネーミング操作を実行するための開始コンテキストです。

ネーミング操作はすべて、コンテキストを基準にします。初期コンテキストには Context インタフェースが実装され、名前を解決する開始点が提供されます。

初期コンテキストが構築されると、コンストラクタに渡される環境パラメータ、および任意のアプリケーションリソースファイルで定義されたプロパティによって環境が初期化されます。さらに、システムプロパティまたはアプレットパラメータ (Context.APPLET の使用による) として、少数の標準 JNDI プロパティが指定されることもあります。これらの特別なプロパティは、Context および LdapContext インタフェースドキュメントのフィールド詳細セクションにリスト表示されます。

JNDI では、次の 2 つのソースから値を順にマージして、各プロパティの値が決定されます。

  1. コンストラクタの環境パラメータ、および (該当するプロパティの) アプレットパラメータとシステムプロパティで、最初に出現するプロパティ
  2. アプリケーションリソースファイル (jndi.properties)
この 2 つのソース、または 1 つ以上のアプリケーションリソースファイルのプロパティについて、プロパティの値が次のように決定されます。プロパティが、JNDI ファクトリのリストを指定する標準 JNDI プロパティの 1 つの場合 (Context を参照)、値はすべて 1 つのコロンで区切られたリストに連結されます。ほかのプロパティの場合は、検索された最初の値だけが使用されます。

初期コンテキストの実装は、実行時に決定されます。デフォルトのポリシーでは、初期コンテキストファクトリのクラス名を含む、環境プロパティ java.naming.factory.initial が使用されます。このポリシーに対する例外は、以下に説明するように、URL 文字列を解決するときに作成されます。

名前パラメータとして URL 文字列 (scheme_id:rest_of_name 形式の String) がメソッドに渡されると、その方式を処理する URL コンテキストファクトリが検索され、URL の解決に使用されます。このようなファクトリが見つからない場合は、java.naming.factory.initial で指定された初期コンテキストが使用されます。同様に、最初のコンポーネントが URL 文字列の CompositeName オブジェクトが名前パラメータとしてメソッドに渡されると、URL コンテキストファクトリが検索され、最初の名前コンポーネントの解決に使用されます。URL コンテキストファクトリが検索される方法の詳細は、NamingManager.getURLContext() を参照してください。

初期コンテキストおよび URL コンテキストファクトリを検索するデフォルトポリシーは、NamingManager.setInitialContextFactoryBuilder()を呼び出すことでオーバーライドされることがあります。

初期コンテキストをインスタンス化できない場合、NoInitialContextException がスローされます。この例外は、InitialContext の構築時だけではなく、InitialContext と対話する際にスローされます。たとえば、初期コンテキストの実装では、実際のメソッドが呼び出される場合に限りコンテキストが検索される場合もあります。アプリケーションは、初期コンテキストの有無がいつ判別されるかには依存しません。

環境プロパティ java.naming.factory.initial が null 以外の場合、InitialContext コンストラクタではそこに指定した初期コンテキストが作成されます。その時点で問題が発生した場合、関連する初期コンテキストファクトリで例外がスローされます。ただし、いつ検証されるか、および初期のコンテキスト、環境プロパティ (つまり接続) に関する問題がいつユーザに表示されるかは、プロバイダの実装に依存します。コンテキストでオペレーションが実行されるときまで待機する場合も、コンテキスト構築時にすぐに実行する場合もあります。

InitialContext インスタンスは、並行アクセスに対して複数のスレッドでは同期化されません。異なる InitialContext インスタンスを操作する複数スレッドでは、同期化は必要ありません。単一の InitialContext に同時にアクセスする必要のあるスレッドは、それ自体で同期化され、必要なロックを提供する必要があります。

導入されたバージョン:
JNDI 1.1 / Java 2 Platform, Standard Edition, v 1.3
関連項目:
Context, NamingManager.setInitialContextFactoryBuilder

フィールドの概要
protected  Context defaultInitCtx
          NamingManager.getInitialContext() を呼び出した結果を保持するフィールドです。
protected  boolean gotDefault
          初期コンテキストが NamingManager.getInitialContext() の呼び出しによって取得されたかを示すフィールドです。
protected  Hashtable<Object,Object> myProps
          この InitialContext に関連した環境です。
 
インタフェース javax.naming.Context から継承されたフィールド
APPLET, AUTHORITATIVE, BATCHSIZE, DNS_URL, INITIAL_CONTEXT_FACTORY, LANGUAGE, OBJECT_FACTORIES, PROVIDER_URL, REFERRAL, SECURITY_AUTHENTICATION, SECURITY_CREDENTIALS, SECURITY_PRINCIPAL, SECURITY_PROTOCOL, STATE_FACTORIES, URL_PKG_PREFIXES
 
コンストラクタの概要
  InitialContext()
          初期コンテキストを構築します。
protected InitialContext(boolean lazy)
          初期化しないオプションを持つ初期化コンテキストを構築します。
  InitialContext(Hashtable<?,?> environment)
          指定した環境を使用して初期コンテキストを構築します。
 
メソッドの概要
 Object addToEnvironment(String propName, Object propVal)
          このコンテキストの環境に、新しい環境プロパティを追加します。
 void bind(Name name, Object obj)
          名前をオブジェクトにバインドします。
 void bind(String name, Object obj)
          名前をオブジェクトにバインドします。
 void close()
          このコンテキストを閉じます。
 Name composeName(Name name, Name prefix)
          このコンテキストを基準にした名前を持つこのコンテキストの名前を変換します。
 String composeName(String name, String prefix)
          このコンテキストを基準にした名前を使用して、このコンテキストの名前を付けます。
 Context createSubcontext(Name name)
          新しいコンテキストを作成してバインドします。
 Context createSubcontext(String name)
          新しいコンテキストを作成してバインドします。
 void destroySubcontext(Name name)
          指定されたコンテキストが破棄され、名前空間から削除されます。
 void destroySubcontext(String name)
          名前付きコンテキストを破棄し、名前空間から削除します。
protected  Context getDefaultInitCtx()
          NamingManager.getInitialContext() を呼び出して初期コンテキストを取得し、defaultInitCtx でキャッシュに格納します。
 Hashtable<?,?> getEnvironment()
          このコンテキストで有効な環境を取得します。
 String getNameInNamespace()
          独自の名前空間でこのコンテキストの完全な名前を取得します。
 NameParser getNameParser(Name name)
          指定されたコンテキストに関連したパーサを取得します。
 NameParser getNameParser(String name)
          名前付きコンテキストに関連したパーサを取得します。
protected  Context getURLOrDefaultInitCtx(Name name)
          name を解決するコンテキストを取得します。
protected  Context getURLOrDefaultInitCtx(String name)
          文字列名 name を解決するコンテキストを取得します。
protected  void init(Hashtable<?,?> environment)
          指定した環境を使用して初期コンテキストを初期化します。
 NamingEnumeration<NameClassPair> list(Name name)
          バインドされたオブジェクトのクラス名とともに、指定されたコンテキストでバインドされた名前を列挙します。
 NamingEnumeration<NameClassPair> list(String name)
          バインドされたオブジェクトのクラス名とともに、名前付きコンテキストでバインドされた名前を列挙します。
 NamingEnumeration<Binding> listBindings(Name name)
          バインドされたオブジェクトとともに、指定されたコンテキストでバインドされた名前を列挙します。
 NamingEnumeration<Binding> listBindings(String name)
          バインドされたオブジェクトとともに、名前付きコンテキストでバインドされた名前を列挙します。
 Object lookup(Name name)
          指定されたオブジェクトを取得します。
 Object lookup(String name)
          名前付きオブジェクトを取得します。
 Object lookupLink(Name name)
          名前の終端の基本コンポーネントを除くリンクをともなう、指定されたオブジェクトを取得します。
 Object lookupLink(String name)
          名前の終端の基本コンポーネントを除くリンクをともなう、名前付きオブジェクトを取得します。
 void rebind(Name name, Object obj)
          名前をオブジェクトにバインドし、既存のバインディングを上書きします。
 void rebind(String name, Object obj)
          名前をオブジェクトにバインドして、既存のバインディングを上書きします。
 Object removeFromEnvironment(String propName)
          このコンテキストの環境から環境プロパティを削除します。
 void rename(Name oldName, Name newName)
          新しい名前を、以前の名前にバインドされたオブジェクトにバインドし、以前の名前をアンバインドします。
 void rename(String oldName, String newName)
          新しい名前を、以前の名前にバインドされたオブジェクトにバインドし、以前の名前をアンバインドします。
 void unbind(Name name)
          指定されたオブジェクトをアンバインドします。
 void unbind(String name)
          名前付きオブジェクトをアンバインドします。
 
クラス java.lang.Object から継承されたメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

フィールドの詳細

myProps

protected Hashtable<Object,Object> myProps
この InitialContext に関連した環境です。null に初期化され、環境を受け取るコンストラクタ、または init() メソッドによって更新されます。

関連項目:
addToEnvironment(java.lang.String, java.lang.Object), removeFromEnvironment(java.lang.String), getEnvironment()

defaultInitCtx

protected Context defaultInitCtx
NamingManager.getInitialContext() を呼び出した結果を保持するフィールドです。最初に getDefaultInitCtx() が呼び出されたときに、getDefaultInitCtx() によって設定されます。そのあと getDefaultInitCtx() を呼び出すと、defaultInitCtx の値が返されます。

関連項目:
getDefaultInitCtx()

gotDefault

protected boolean gotDefault
初期コンテキストが NamingManager.getInitialContext() の呼び出しによって取得されたかを示すフィールドです。true の場合、結果は defaultInitCtx にあります。

コンストラクタの詳細

InitialContext

protected InitialContext(boolean lazy)
                  throws NamingException
初期化しないオプションを持つ初期化コンテキストを構築します。これは、InitialContext コンストラクタが呼び出されたときに環境パラメータの値が不明な場合に、サブクラスのコンストラクタで使用されることがあります。サブクラスのコンストラクタではこのコンストラクタが呼び出され、環境の値が計算されて、値を返す前に init() が呼び出されます。

パラメータ:
lazy - true は、初期コンテキストが初期化されないことを示す。false は new InitialContext() を呼び出すのと同じ
例外:
NamingException - ネーミング例外が発生した場合
導入されたバージョン:
1.3
関連項目:
init(Hashtable)

InitialContext

public InitialContext()
               throws NamingException
初期コンテキストを構築します。環境プロパティは指定されません。new InitialContext(null) と同じです。

例外:
NamingException - ネーミング例外が発生した場合
関連項目:
InitialContext(Hashtable)

InitialContext

public InitialContext(Hashtable<?,?> environment)
               throws NamingException
指定した環境を使用して初期コンテキストを構築します。環境プロパティは、クラスの概要で説明します。

このコンストラクタでは、environment の変更または参照の保存は行われませんが、複製が保存されます。

パラメータ:
environment - 初期コンテキストの作成に使用される環境。null は空の環境を示す
例外:
NamingException - ネーミング例外が発生した場合
メソッドの詳細

init

protected void init(Hashtable<?,?> environment)
             throws NamingException
指定した環境を使用して初期コンテキストを初期化します。環境プロパティは、クラスの概要で説明します。

このメソッドでは environment が変更され、参照が保存されます。呼び出し側では変更されません。

パラメータ:
environment - 初期コンテキストの作成に使用される環境。null は空の環境を示す
例外:
NamingException - ネーミング例外が発生した場合
導入されたバージョン:
1.3
関連項目:
InitialContext(boolean)

getDefaultInitCtx

protected Context getDefaultInitCtx()
                             throws NamingException
NamingManager.getInitialContext() を呼び出して初期コンテキストを取得し、defaultInitCtx でキャッシュに格納します。以前に実行したことがわかるように gotDefault を設定します。

戻り値:
null 以外のキャッシュ済み初期コンテキスト
例外:
NoInitialContextException - 初期コンテキストが見つからない場合
NamingException - ネーミング例外が見つかった場合

getURLOrDefaultInitCtx

protected Context getURLOrDefaultInitCtx(String name)
                                  throws NamingException
文字列名 name を解決するコンテキストを取得します。name 名が URL 文字列の場合は、URL コンテキストを検索します。見つからなかった場合、または name が URL 文字列ではない場合は、getDefaultInitCtx() が返されます。

サブクラスでこのメソッドがどのように使用されるかは、getURLOrDefaultInitCtx(Name) の説明を参照してください。

パラメータ:
name - コンテキストの取得対象となる null 以外の名前
戻り値:
name またはキャッシュ済み初期コンテキストの URL コンテキスト。結果は null ではない
例外:
NoInitialContextException - 初期コンテキストが見つからない場合
NamingException - ネーミング例外が見つかった場合
関連項目:
NamingManager.getURLContext(java.lang.String, java.util.Hashtable)

getURLOrDefaultInitCtx

protected Context getURLOrDefaultInitCtx(Name name)
                                  throws NamingException
name を解決するコンテキストを取得します。name 名の最初のコンポーネントが URL 文字列の場合は、URL コンテキストを検索します。見つからなかった場合、または name の最初のコンポーネントが URL 文字列ではない場合は、getDefaultInitCtx() が返されます。

InitialContext のサブクラスを作成するときは、次のようにしてこのメソッドを使用します。このメソッドを使用する新しいメソッドを定義し、必要なサブクラスの初期コンテキストを取得します。


protected XXXContext getURLOrDefaultInitXXXCtx(Name name)  throws NamingException { Context answer = getURLOrDefaultInitCtx(name); if (!(answer instanceof XXXContext)) { if (answer == null) {     throw new NoInitialContextException(); } else {         throw new NotContextException("Not an XXXContext"); }       }       return (XXXContext)answer; }
サブクラスの新しいメソッドに実装を指定する場合は、この新しく定義されたメソッドを使用して、初期コンテキストを取得します。


public Object XXXMethod1(Name name, ...) {      throws NamingException { return getURLOrDefaultInitXXXCtx(name).XXXMethod1(name, ...); } 

パラメータ:
name - コンテキストの取得対象となる null 以外の名前
戻り値:
name またはキャッシュ済み初期コンテキストの URL コンテキスト。結果は null ではない
例外:
NoInitialContextException - 初期コンテキストが見つからない場合
NamingException - ネーミング例外が見つかった場合
関連項目:
NamingManager.getURLContext(java.lang.String, java.util.Hashtable)

lookup

public Object lookup(String name)
              throws NamingException
インタフェース Context の記述:
名前付きオブジェクトを取得します。詳細は、Context.lookup(Name) を参照してください。

定義:
インタフェース Context 内の lookup
パラメータ:
name - 検索するオブジェクトの名前
戻り値:
name にバインドされるオブジェクト
例外:
NamingException - ネーミング例外が発生した場合

lookup

public Object lookup(Name name)
              throws NamingException
インタフェース Context の記述:
指定されたオブジェクトを取得します。name が空の場合は、このコンテキストの新しいインスタンスを返します。このコンテキストと同じネーミングコンテキストを表しますが、環境は個別に変更することができ、同時にアクセスすることもできます。

定義:
インタフェース Context 内の lookup
パラメータ:
name - 検索するオブジェクトの名前
戻り値:
name にバインドされるオブジェクト
例外:
NamingException - ネーミング例外が発生した場合
関連項目:
Context.lookup(String), Context.lookupLink(Name)

bind

public void bind(String name,
                 Object obj)
          throws NamingException
インタフェース Context の記述:
名前をオブジェクトにバインドします。詳細は、Context.bind(Name, Object) を参照してください。

定義:
インタフェース Context 内の bind
パラメータ:
name - 空ではないバインドされる名前
obj - null の可能性があるバインドされるオブジェクト
例外:
NameAlreadyBoundException - 名前がすでにバインドされている場合
InvalidAttributesException - オブジェクトにすべての必須属性が指定されていない場合
NamingException - ネーミング例外が発生した場合

bind

public void bind(Name name,
                 Object obj)
          throws NamingException
インタフェース Context の記述:
名前をオブジェクトにバインドします。名前の終端の基本部分以外のすべてのコンポーネントによって名付けられた、すべての中間コンテキストおよびターゲットコンテキストがすでに存在している必要があります。

定義:
インタフェース Context 内の bind
パラメータ:
name - 空ではないバインドされる名前
obj - null の可能性があるバインドされるオブジェクト
例外:
NameAlreadyBoundException - 名前がすでにバインドされている場合
InvalidAttributesException - オブジェクトにすべての必須属性が指定されていない場合
NamingException - ネーミング例外が発生した場合
関連項目:
Context.bind(String, Object), Context.rebind(Name, Object), DirContext.bind(Name, Object, javax.naming.directory.Attributes)

rebind

public void rebind(String name,
                   Object obj)
            throws NamingException
インタフェース Context の記述:
名前をオブジェクトにバインドして、既存のバインディングを上書きします。詳細は、Context.rebind(Name, Object) を参照してください。

定義:
インタフェース Context 内の rebind
パラメータ:
name - 空ではないバインドされる名前
obj - null の可能性があるバインドされるオブジェクト
例外:
InvalidAttributesException - オブジェクトにすべての必須属性が指定されていない場合
NamingException - ネーミング例外が発生した場合

rebind

public void rebind(Name name,
                   Object obj)
            throws NamingException
インタフェース Context の記述:
名前をオブジェクトにバインドし、既存のバインディングを上書きします。名前の終端の基本コンポーネント以外のすべてによって名付けられた、すべての中間コンテキストおよびターゲットコンテキストがすでに存在している必要があります。

オブジェクトが DirContext の場合、名前に関連付けられた既存の属性が、オブジェクトの属性と置換されます。置換されない場合、名前に関連付けられた既存の属性は、変更されないままです。

定義:
インタフェース Context 内の rebind
パラメータ:
name - 空ではないバインドされる名前
obj - null の可能性があるバインドされるオブジェクト
例外:
InvalidAttributesException - オブジェクトにすべての必須属性が指定されていない場合
NamingException - ネーミング例外が発生した場合
関連項目:
Context.rebind(String, Object), Context.bind(Name, Object), DirContext.rebind(Name, Object, javax.naming.directory.Attributes), DirContext

unbind

public void unbind(String name)
            throws NamingException
インタフェース Context の記述:
名前付きオブジェクトをアンバインドします。詳細は、Context.unbind(Name) を参照してください。

定義:
インタフェース Context 内の unbind
パラメータ:
name - アンバインドする名前。空は不可
例外:
NameNotFoundException - 中間コンテキストが存在しない場合
NamingException - ネーミング例外が発生した場合

unbind

public void unbind(Name name)
            throws NamingException
インタフェース Context の記述:
指定されたオブジェクトをアンバインドします。name の終端の基本部分以外のすべてによって名付けられたターゲットコンテキストから、name の終端の基本名を削除します。

このメソッドは、べき等です。終端の基本名がターゲットコンテキストでバインドされていない場合でも、成功します。ただし、中間コンテキストが存在しない場合は、NameNotFoundException がスローされます。

名前に関連付けられた属性が削除されます。中間コンテキストは変更されません。

定義:
インタフェース Context 内の unbind
パラメータ:
name - アンバインドする名前。空は不可
例外:
NameNotFoundException - 中間コンテキストが存在しない場合
NamingException - ネーミング例外が発生した場合
関連項目:
Context.unbind(String)

rename

public void rename(String oldName,
                   String newName)
            throws NamingException
インタフェース Context の記述:
新しい名前を、以前の名前にバインドされたオブジェクトにバインドし、以前の名前をアンバインドします。詳細は、Context.rename(Name, Name) を参照してください。

定義:
インタフェース Context 内の rename
パラメータ:
oldName - 既存のバインディングの名前。空は不可
newName - 新しいバインディングの名前。空は不可
例外:
NameAlreadyBoundException - newName がすでにバインドされている場合
NamingException - ネーミング例外が発生した場合

rename

public void rename(Name oldName,
                   Name newName)
            throws NamingException
インタフェース Context の記述:
新しい名前を、以前の名前にバインドされたオブジェクトにバインドし、以前の名前をアンバインドします。2 つの名前は、このコンテキストを基準にします。以前の名前に関連付けられた属性は、新しい名前に関連付けられます。以前の名前の中間コンテキストは、変更されません。

定義:
インタフェース Context 内の rename
パラメータ:
oldName - 既存のバインディングの名前。空は不可
newName - 新しいバインディングの名前。空は不可
例外:
NameAlreadyBoundException - newName がすでにバインドされている場合
NamingException - ネーミング例外が発生した場合
関連項目:
Context.rename(String, String), Context.bind(Name, Object), Context.rebind(Name, Object)

list

public NamingEnumeration<NameClassPair> list(String name)
                                      throws NamingException
インタフェース Context の記述:
バインドされたオブジェクトのクラス名とともに、名前付きコンテキストでバインドされた名前を列挙します。詳細は、Context.list(Name) を参照してください。

定義:
インタフェース Context 内の list
パラメータ:
name - リスト表示するコンテキストの名前
戻り値:
このコンテキストのバインディングの名前とクラス名の列挙。列挙の要素の型は NameClassPair
例外:
NamingException - ネーミング例外が発生した場合

list

public NamingEnumeration<NameClassPair> list(Name name)
                                      throws NamingException
インタフェース Context の記述:
バインドされたオブジェクトのクラス名とともに、指定されたコンテキストでバインドされた名前を列挙します。サブコンテキストの内容は含まれません。

このコンテキストにバインディングが追加されるか、またはこのコンテキストからバインディングが削除される場合、以前に返された列挙への影響は定義されていません。

定義:
インタフェース Context 内の list
パラメータ:
name - リスト表示するコンテキストの名前
戻り値:
このコンテキストのバインディングの名前とクラス名の列挙。列挙の要素の型は NameClassPair
例外:
NamingException - ネーミング例外が発生した場合
関連項目:
Context.list(String), Context.listBindings(Name), NameClassPair

listBindings

public NamingEnumeration<Binding> listBindings(String name)
                                        throws NamingException
インタフェース Context の記述:
バインドされたオブジェクトとともに、名前付きコンテキストでバインドされた名前を列挙します。詳細は、Context.listBindings(Name) を参照してください。

定義:
インタフェース Context 内の listBindings
パラメータ:
name - リスト表示するコンテキストの名前
戻り値:
このコンテキストのバインディングの列挙。列挙の各要素は Binding
例外:
NamingException - ネーミング例外が発生した場合

listBindings

public NamingEnumeration<Binding> listBindings(Name name)
                                        throws NamingException
インタフェース Context の記述:
バインドされたオブジェクトとともに、指定されたコンテキストでバインドされた名前を列挙します。サブコンテキストの内容は含まれません。

このコンテキストにバインディングが追加されるか、またはこのコンテキストからバインディングが削除される場合、以前に返された列挙への影響は定義されていません。

定義:
インタフェース Context 内の listBindings
パラメータ:
name - リスト表示するコンテキストの名前
戻り値:
このコンテキストのバインディングの列挙。列挙の各要素は Binding
例外:
NamingException - ネーミング例外が発生した場合
関連項目:
Context.listBindings(String), Context.list(Name), Binding

destroySubcontext

public void destroySubcontext(String name)
                       throws NamingException
インタフェース Context の記述:
名前付きコンテキストを破棄し、名前空間から削除します。詳細は、Context.destroySubcontext(Name) を参照してください。

定義:
インタフェース Context 内の destroySubcontext
パラメータ:
name - 破棄されるコンテキストの名前。空は不可
例外:
NameNotFoundException - 中間コンテキストが存在しない場合
NotContextException - 名前がバインドされているがコンテキストの名前がない、または該当する型のコンテキストの名前がない場合
ContextNotEmptyException - 指定されたコンテキストが空ではない場合
NamingException - ネーミング例外が発生した場合

destroySubcontext

public void destroySubcontext(Name name)
                       throws NamingException
インタフェース Context の記述:
指定されたコンテキストが破棄され、名前空間から削除されます。名前に関連付けられた属性も削除されます。中間コンテキストは破棄されません。

このメソッドは、べき等です。終端の基本名がターゲットコンテキストでバインドされていない場合でも、成功します。ただし、中間コンテキストが存在しない場合は、NameNotFoundException がスローされます。

連合ネーミングシステムでは、1 つのネーミングシステムからのコンテキストが別のネーミングシステムの名前にバインドされます。そのあと、合成名を使用して外部コンテキストのオペレーションを検索および実行できます。ただし、外部コンテキストはバインドされたコンテキストのサブコンテキストではないため、この合成名を使用してコンテキストを破棄しようとすると、NotContextException で失敗します。代わりに、unbind() を使用して、外部コンテキストのバインディングを削除します。外部コンテキストを破棄するには、外部コンテキストの「ネイティブな」ネーミングシステムからコンテキストで destroySubcontext() を実行する必要があります。

定義:
インタフェース Context 内の destroySubcontext
パラメータ:
name - 破棄されるコンテキストの名前。空は不可
例外:
NameNotFoundException - 中間コンテキストが存在しない場合
NotContextException - 名前がバインドされているがコンテキストの名前がない、または該当する型のコンテキストの名前がない場合
ContextNotEmptyException - 指定されたコンテキストが空ではない場合
NamingException - ネーミング例外が発生した場合
関連項目:
Context.destroySubcontext(String)

createSubcontext

public Context createSubcontext(String name)
                         throws NamingException
インタフェース Context の記述:
新しいコンテキストを作成してバインドします。詳細は、Context.createSubcontext(Name) を参照してください。

定義:
インタフェース Context 内の createSubcontext
パラメータ:
name - 空ではない作成されるコンテキストの名前
戻り値:
新しく作成されたコンテキスト
例外:
NameAlreadyBoundException - 名前がすでにバインドされている場合
InvalidAttributesException - サブコンテキストの作成に、必須属性の指定が必要な場合
NamingException - ネーミング例外が発生した場合

createSubcontext

public Context createSubcontext(Name name)
                         throws NamingException
インタフェース Context の記述:
新しいコンテキストを作成してバインドします。指定した名前の新しいコンテキストを作成し、(名前の終端の基本コンポーネント以外のすべてによって名付けられた) ターゲットコンテキストでバインドします。すべての中間コンテキストおよびターゲットコンテキストがすでに存在している必要があります。

定義:
インタフェース Context 内の createSubcontext
パラメータ:
name - 空ではない作成されるコンテキストの名前
戻り値:
新しく作成されたコンテキスト
例外:
NameAlreadyBoundException - 名前がすでにバインドされている場合
InvalidAttributesException - サブコンテキストの作成に、必須属性の指定が必要な場合
NamingException - ネーミング例外が発生した場合
関連項目:
Context.createSubcontext(String), DirContext.createSubcontext(javax.naming.Name, javax.naming.directory.Attributes)

lookupLink

public Object lookupLink(String name)
                  throws NamingException
インタフェース Context の記述:
名前の終端の基本コンポーネントを除くリンクをともなう、名前付きオブジェクトを取得します。詳細は、Context.lookupLink(Name) を参照してください。

定義:
インタフェース Context 内の lookupLink
パラメータ:
name - 検索するオブジェクトの名前
戻り値:
終端リンク (ある場合) をともなわない name にバインドされたオブジェクト
例外:
NamingException - ネーミング例外が発生した場合

lookupLink

public Object lookupLink(Name name)
                  throws NamingException
インタフェース Context の記述:
名前の終端の基本コンポーネントを除くリンクをともなう、指定されたオブジェクトを取得します。name にバインドされたオブジェクトがリンクではない場合は、オブジェクト自体が返されます。

定義:
インタフェース Context 内の lookupLink
パラメータ:
name - 検索するオブジェクトの名前
戻り値:
終端リンク (ある場合) をともなわない name にバインドされたオブジェクト
例外:
NamingException - ネーミング例外が発生した場合
関連項目:
Context.lookupLink(String)

getNameParser

public NameParser getNameParser(String name)
                         throws NamingException
インタフェース Context の記述:
名前付きコンテキストに関連したパーサを取得します。詳細は、Context.getNameParser(Name) を参照してください。

定義:
インタフェース Context 内の getNameParser
パラメータ:
name - パーサの取得元のコンテキストの名前
戻り値:
複合名の構文を構文解析して基本コンポーネントにする名前のパーサ
例外:
NamingException - ネーミング例外が発生した場合

getNameParser

public NameParser getNameParser(Name name)
                         throws NamingException
インタフェース Context の記述:
指定されたコンテキストに関連したパーサを取得します。名前空間の連合では、さまざまなネーミングシステムで名前の構文が構文解析されます。アプリケーションからこのメソッドを使用すれば、特定のネーミングシステムのネーミング変換によって名前を基本コンポーネントに構文解析するパーサを取得できます。単一のネーミングシステムでは、このメソッドによって返される NameParser オブジェクトは等しくなければなりません (equals() テストを使用)。

定義:
インタフェース Context 内の getNameParser
パラメータ:
name - パーサの取得元のコンテキストの名前
戻り値:
複合名の構文を構文解析して基本コンポーネントにする名前のパーサ
例外:
NamingException - ネーミング例外が発生した場合
関連項目:
Context.getNameParser(String), CompoundName

composeName

public String composeName(String name,
                          String prefix)
                   throws NamingException
このコンテキストを基準にした名前を使用して、このコンテキストの名前を付けます。初期コンテキストは、それ自体以外のコンテキストを基準にして名前を付けられることはないため、prefix パラメータの値は空の名前 ("") にする必要があります。

定義:
インタフェース Context 内の composeName
パラメータ:
name - このコンテキストに関連した名前
prefix - 上位コンテキストの 1 つに関連したこのコンテキストの名前
戻り値:
prefix および name の変換
例外:
NamingException - ネーミング例外が発生した場合

composeName

public Name composeName(Name name,
                        Name prefix)
                 throws NamingException
このコンテキストを基準にした名前を持つこのコンテキストの名前を変換します。初期コンテキストは、それ自体以外のコンテキストを基準にして名前を付けられることはないため、prefix パラメータの値は空の名前にする必要があります。

定義:
インタフェース Context 内の composeName
パラメータ:
name - このコンテキストに関連した名前
prefix - 上位コンテキストの 1 つに関連したこのコンテキストの名前
戻り値:
prefix および name の変換
例外:
NamingException - ネーミング例外が発生した場合
関連項目:
Context.composeName(String, String)

addToEnvironment

public Object addToEnvironment(String propName,
                               Object propVal)
                        throws NamingException
インタフェース Context の記述:
このコンテキストの環境に、新しい環境プロパティを追加します。プロパティがすでに存在する場合、値は上書きされます。環境プロパティの詳細は、クラスの説明を参照してください。

定義:
インタフェース Context 内の addToEnvironment
パラメータ:
propName - 追加する環境プロパティの名前。null 以外
propVal - 追加するプロパティの値。null 以外
戻り値:
プロパティの以前の値、またはプロパティが以前は環境になかった場合は null
例外:
NamingException - ネーミング例外が発生した場合
関連項目:
Context.getEnvironment(), Context.removeFromEnvironment(String)

removeFromEnvironment

public Object removeFromEnvironment(String propName)
                             throws NamingException
インタフェース Context の記述:
このコンテキストの環境から環境プロパティを削除します。環境プロパティの詳細は、クラスの説明を参照してください。

定義:
インタフェース Context 内の removeFromEnvironment
パラメータ:
propName - 削除する環境プロパティの名前。null 以外
戻り値:
プロパティの以前の値、またはプロパティが環境になかった場合は null
例外:
NamingException - ネーミング例外が発生した場合
関連項目:
Context.getEnvironment(), Context.addToEnvironment(String, Object)

getEnvironment

public Hashtable<?,?> getEnvironment()
                              throws NamingException
インタフェース Context の記述:
このコンテキストで有効な環境を取得します。環境プロパティの詳細は、クラスの説明を参照してください。

呼び出し側は、返されるオブジェクトを変更できません。コンテキストに対する効果は定義されていません。このコンテキストの環境は、addToEnvironment() および removeFromEnvironment() によって変更されることがあります。

定義:
インタフェース Context 内の getEnvironment
戻り値:
このコンテキストの環境。null 以外
例外:
NamingException - ネーミング例外が発生した場合
関連項目:
Context.addToEnvironment(String, Object), Context.removeFromEnvironment(String)

close

public void close()
           throws NamingException
インタフェース Context の記述:
このコンテキストを閉じます。このメソッドでは、ガベージコレクタによって自動的に解放されるまで待機するのではなく、このコンテキストのリソースがただちに解放されます。

このメソッドは、べき等です。すでに閉じられたコンテキストでこのメソッドを呼び出しても、効果はありません。閉じられたコンテキストでほかのメソッドを呼び出すことはできません。結果は未定義の動作になります。

定義:
インタフェース Context 内の close
例外:
NamingException - ネーミング例外が発生した場合

getNameInNamespace

public String getNameInNamespace()
                          throws NamingException
インタフェース Context の記述:
独自の名前空間でこのコンテキストの完全な名前を取得します。

多くのネーミングサービスには、各名前空間のオブジェクトに対する「完全な名前」の概念があります。たとえば、LDAP エントリには識別名があり、DNS レコードには完全修飾名があります。このメソッドによって、クライアントアプリケーションでこの名前を取得できます。このメソッドで返される文字列は、JNDI 合成名ではなく、コンテキストメソッドに直接渡すことはできません。完全な名前の概念が意味を持たないネーミングシステムでは、OperationNotSupportedException がスローされます。

定義:
インタフェース Context 内の getNameInNamespace
戻り値:
独自の名前空間に対するこのコンテキストの名前。null 以外
例外:
OperationNotSupportedException - ネーミングシステムに完全な名前の概念がない場合
NamingException - ネーミング例外が発生した場合

JavaTM 2 Platform
Standard Ed. 5.0

バグの報告と機能のリクエスト
さらに詳しい API リファレンスおよび開発者ドキュメントについては、Java 2 SDK SE 開発者用ドキュメントを参照してください。開発者向けの詳細な解説、概念の概要、用語の定義、バグの回避策、およびコード実例が含まれています。

Copyright 2004 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。