モジュール java.naming
パッケージ javax.naming

クラスInitialContext

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

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

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

初期コンテキストが構築されると、コンストラクタに渡される環境パラメータ、および任意のアプリケーション・リソース・ファイルで定義されたプロパティによって環境が初期化されます。

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

  1. コンストラクタの環境パラメータおよびシステム・プロパティから最初に出現するプロパティ。
  2. アプリケーション・リソース・ファイル(jndi.properties)。
この2つのソース、または1つ以上のアプリケーション・リソース・ファイルのプロパティについて、プロパティの値が次のように決定されます。 このプロパティが、JNDIファクトリのリスト(Contextを参照してください)を指定する標準のJNDIプロパティの1つである場合、すべての値が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に並行してアクセスする必要のあるスレッドは、それ自体で同期化され、必要なロックを提供する必要があります。

導入されたバージョン:
1.3, JNDI 1.1
関連項目:
  • フィールドのサマリー

    フィールド
    修飾子と型
    フィールド
    説明
    protected Context
    NamingManager.getInitialContext()を呼び出した結果を保持するフィールドです。
    protected boolean
    初期コンテキストがNamingManager.getInitialContext()の呼出しによって取得されたかを示すフィールドです。
    このInitialContextに関連した環境です。
  • コンストラクタのサマリー

    コンストラクタ
    修飾子
    コンストラクタ
    説明
     
    初期コンテキストを構築します。
    protected
    InitialContext(boolean lazy)
    初期化しないオプションを持つ初期コンテキストを構築します。
     
    InitialContext(Hashtable<?,?> environment)
    指定した環境を使用して初期コンテキストを構築します。
  • メソッドのサマリー

    修飾子と型
    メソッド
    説明
    addToEnvironment(String propName, Object propVal)
    このコンテキストの環境に、新しい環境プロパティを追加します。
    void
    bind(String name, Object obj)
    名前をオブジェクトにバインドします。
    void
    bind(Name name, Object obj)
    名前をオブジェクトにバインドします。
    void
    このコンテキストを閉じます。
    composeName(String name, String prefix)
    このコンテキストを基準にした名前を持つこのコンテキストの名前を変換します。
    composeName(Name name, Name prefix)
    このコンテキストを基準にした名前を持つこのコンテキストの名前を変換します。
    新しいコンテキストを作成してバインドします。
    新しいコンテキストを作成してバインドします。
    void
    名前付きコンテキストを破棄し、名前空間から削除します。
    void
    名前付きコンテキストを破棄し、名前空間から削除します。
    static <T> T
    名前付きオブジェクトを取得するstaticメソッドです。
    static <T> T
    doLookup(Name name)
    名前付きオブジェクトを取得するstaticメソッドです。
    protected Context
    NamingManager.getInitialContext()を呼び出すことによって初期コンテキストを取得し、それをdefaultInitCtx内にキャッシュします。
    このコンテキストで有効な環境を取得します。
    独自の名前空間でこのコンテキストの完全な名前を取得します。
    名前付きコンテキストに関連したパーサーを取得します。
    名前付きコンテキストに関連したパーサーを取得します。
    protected Context
    文字列名nameを解決するためのコンテキストを取得します。
    protected Context
    nameを解決するためのコンテキストを取得します。
    protected void
    init(Hashtable<?,?> environment)
    指定した環境を使用して初期コンテキストを初期化します。
    list(String name)
    バインドされたオブジェクトのクラス名とともに、名前付きコンテキストでバインドされた名前を列挙します。
    list(Name name)
    バインドされたオブジェクトのクラス名とともに、名前付きコンテキストでバインドされた名前を列挙します。
    バインドされたオブジェクトとともに、名前付きコンテキストでバインドされた名前を列挙します。
    バインドされたオブジェクトとともに、名前付きコンテキストでバインドされた名前を列挙します。
    lookup(String name)
    名前付きオブジェクトを取得します。
    lookup(Name name)
    名前付きオブジェクトを取得します。
    名前の終端の基本コンポーネントを除くリンクをともなう、名前付きオブジェクトを取得します。
    名前の終端の基本コンポーネントを除くリンクをともなう、名前付きオブジェクトを取得します。
    void
    rebind(String name, Object obj)
    名前をオブジェクトにバインドし、既存のバインディングを上書きします。
    void
    rebind(Name name, Object obj)
    名前をオブジェクトにバインドし、既存のバインディングを上書きします。
    このコンテキストの環境から環境プロパティを削除します。
    void
    rename(String oldName, String newName)
    新しい名前を、以前の名前にバインドされたオブジェクトにバインドし、以前の名前をアンバインドします。
    void
    rename(Name oldName, Name newName)
    新しい名前を、以前の名前にバインドされたオブジェクトにバインドし、以前の名前をアンバインドします。
    void
    unbind(String name)
    名前付きオブジェクトをアンバインドします。
    void
    unbind(Name name)
    名前付きオブジェクトをアンバインドします。

    クラスjava.lang.Objectで宣言されたメソッド

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • フィールド詳細

    • myProps

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

      protected Context defaultInitCtx
      NamingManager.getInitialContext()を呼び出した結果を保持するフィールドです。 最初にgetDefaultInitCtx()が呼び出されたときに、getDefaultInitCtx()によって設定されます。 そのあとgetDefaultInitCtx()を呼び出すと、defaultInitCtxの値が返されます。
      関連項目:
    • 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
      関連項目:
    • InitialContext

      public InitialContext() throws NamingException
      初期コンテキストを構築します。 環境プロパティは指定されません。 new InitialContext(null)と等価です。
      例外:
      NamingException - ネーミング例外が発生した場合
      関連項目:
    • InitialContext

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

      このコンストラクタは、environmentの変更や参照の保存は行いませんが、クローンの保存は可能です。 呼出し元は、environmentがコンストラクタに渡された後、変更可能なキーおよび値を変更しないでください。

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

    • init

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

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

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

      public static <T> T doLookup(Name name) throws NamingException
      名前付きオブジェクトを取得するstaticメソッドです。 これは、次に相当するショートカット・メソッドです。

      InitialContext ic = new InitialContext(); Object obj = ic.lookup();

      nameが空の場合、このコンテキストの新しいインスタンス(このコンテキストと同じネーミング・コンテキストを表しますが、その環境は独立して変更でき、同時にアクセスできます)を返します。

      型パラメータ:
      T - 返されたオブジェクトの型
      パラメータ:
      name - 検索するオブジェクトの名前
      戻り値:
      nameにバインドされたオブジェクト
      例外:
      NamingException - ネーミング例外が発生した場合
      導入されたバージョン:
      1.6
      関連項目:
    • doLookup

      public static <T> T doLookup(String name) throws NamingException
      名前付きオブジェクトを取得するstaticメソッドです。 詳細は、doLookup(Name)を参照してください。
      型パラメータ:
      T - 返されたオブジェクトの型
      パラメータ:
      name - 検索するオブジェクトの名前
      戻り値:
      nameにバインドされたオブジェクト
      例外:
      NamingException - ネーミング例外が発生した場合
      導入されたバージョン:
      1.6
    • 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 - ネーミング例外が検出された場合。
      関連項目:
    • 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 - ネーミング例外が検出された場合。
      関連項目:
    • lookup

      public Object lookup(String name) throws NamingException
      インタフェースからコピーされた説明: Context
      名前付きオブジェクトを取得します。 詳細は、Context.lookup(Name)を参照してください。
      定義:
      lookup、インタフェースContext
      パラメータ:
      name - 検索するオブジェクトの名前
      戻り値:
      nameにバインドされたオブジェクト
      例外:
      NamingException - ネーミング例外が発生した場合
    • lookup

      public Object lookup(Name name) throws NamingException
      インタフェースからコピーされた説明: Context
      名前付きオブジェクトを取得します。 nameが空の場合、このコンテキストの新しいインスタンス(このコンテキストと同じネーミング・コンテキストを表しますが、その環境は独立して変更でき、同時にアクセスできます)を返します。
      定義:
      lookup、インタフェースContext
      パラメータ:
      name - 検索するオブジェクトの名前
      戻り値:
      nameにバインドされたオブジェクト
      例外:
      NamingException - ネーミング例外が発生した場合
      関連項目:
    • bind

      public void bind(String name, Object obj) throws NamingException
      インタフェースからコピーされた説明: Context
      名前をオブジェクトにバインドします。 詳細は、Context.bind(Name, Object)を参照してください。
      定義:
      bind、インタフェースContext
      パラメータ:
      name - バインドする名前。空は不可
      obj - バインドするオブジェクト。nullの可能性がある
      例外:
      NameAlreadyBoundException - 名前がすでにバインドされている場合
      InvalidAttributesException - オブジェクトによって一部の必須属性が指定されなかった場合
      NamingException - ネーミング例外が発生した場合
    • bind

      public void bind(Name name, Object obj) throws NamingException
      インタフェースからコピーされた説明: Context
      名前をオブジェクトにバインドします。 名前の終端の基本コンポーネント以外のすべてによって名付けられた、すべての中間コンテキストおよびターゲット・コンテキストがすでに存在している必要があります。
      定義:
      bind、インタフェースContext
      パラメータ:
      name - バインドする名前。空は不可
      obj - バインドするオブジェクト。nullの可能性がある
      例外:
      NameAlreadyBoundException - 名前がすでにバインドされている場合
      InvalidAttributesException - オブジェクトによって一部の必須属性が指定されなかった場合
      NamingException - ネーミング例外が発生した場合
      関連項目:
    • rebind

      public void rebind(String name, Object obj) throws NamingException
      インタフェースからコピーされた説明: Context
      名前をオブジェクトにバインドし、既存のバインディングを上書きします。 詳細は、Context.rebind(Name, Object)を参照してください。
      定義:
      rebind、インタフェースContext
      パラメータ:
      name - バインドする名前。空は不可
      obj - バインドするオブジェクト。nullの可能性がある
      例外:
      InvalidAttributesException - オブジェクトによって一部の必須属性が指定されなかった場合
      NamingException - ネーミング例外が発生した場合
    • rebind

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

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

      定義:
      rebind、インタフェースContext
      パラメータ:
      name - バインドする名前。空は不可
      obj - バインドするオブジェクト。nullの可能性がある
      例外:
      InvalidAttributesException - オブジェクトによって一部の必須属性が指定されなかった場合
      NamingException - ネーミング例外が発生した場合
      関連項目:
    • unbind

      public void unbind(String name) throws NamingException
      インタフェースからコピーされた説明: Context
      名前付きオブジェクトをアンバインドします。 詳細は、Context.unbind(Name)を参照してください。
      定義:
      unbind、インタフェースContext
      パラメータ:
      name - アンバインドする名前。空は不可
      例外:
      NameNotFoundException - 中間コンテキストが存在しない場合
      NamingException - ネーミング例外が発生した場合
    • unbind

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

      このメソッドはべき等です。 ターゲット・コンテキストでターミナル・アトミック名がバインドされていない場合でも成功しますが、中間コンテキストが存在しない場合はNameNotFoundExceptionをスローします。

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

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

      public void rename(String oldName, String newName) throws NamingException
      インタフェースからコピーされた説明: Context
      新しい名前を、以前の名前にバインドされたオブジェクトにバインドし、以前の名前をアンバインドします。 詳細は、Context.rename(Name, Name)を参照してください。
      定義:
      rename、インタフェースContext
      パラメータ:
      oldName - 既存のバインディングの名前。空は不可
      newName - 新しいバインディングの名前。空は不可
      例外:
      NameAlreadyBoundException - newNameがすでにバインドされている場合
      NamingException - ネーミング例外が発生した場合
    • rename

      public void rename(Name oldName, Name newName) throws NamingException
      インタフェースからコピーされた説明: Context
      新しい名前を、以前の名前にバインドされたオブジェクトにバインドし、以前の名前をアンバインドします。 2つの名前は、このコンテキストを基準にします。 以前の名前に関連付けられている属性は、新しい名前に関連付けられます。 以前の名前の中間コンテキストは、変更されません。
      定義:
      rename、インタフェースContext
      パラメータ:
      oldName - 既存のバインディングの名前。空は不可
      newName - 新しいバインディングの名前。空は不可
      例外:
      NameAlreadyBoundException - newNameがすでにバインドされている場合
      NamingException - ネーミング例外が発生した場合
      関連項目:
    • list

      インタフェースからコピーされた説明: Context
      バインドされたオブジェクトのクラス名とともに、名前付きコンテキストでバインドされた名前を列挙します。 詳細は、Context.list(Name)を参照してください。
      定義:
      list、インタフェースContext
      パラメータ:
      name - リスト表示するコンテキストの名前
      戻り値:
      このコンテキストのバインディングの名前とクラス名の列挙。 列挙の各要素の型はNameClassPairです。
      例外:
      NamingException - ネーミング例外が発生した場合
    • list

      インタフェースからコピーされた説明: Context
      バインドされたオブジェクトのクラス名とともに、名前付きコンテキストでバインドされた名前を列挙します。 サブコンテキストの内容は含まれません。

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

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

      public NamingEnumeration<Binding> listBindings(String name) throws NamingException
      インタフェースからコピーされた説明: Context
      バインドされたオブジェクトとともに、名前付きコンテキストでバインドされた名前を列挙します。 詳細は、Context.listBindings(Name)を参照してください。
      定義:
      listBindings、インタフェースContext
      パラメータ:
      name - リスト表示するコンテキストの名前
      戻り値:
      このコンテキストのバインディングの列挙。 列挙の各要素の型はBindingです。
      例外:
      NamingException - ネーミング例外が発生した場合
    • listBindings

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

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

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

      public void destroySubcontext(String name) throws NamingException
      インタフェースからコピーされた説明: Context
      名前付きコンテキストを破棄し、名前空間から削除します。 詳細は、Context.destroySubcontext(Name)を参照してください。
      定義:
      destroySubcontext、インタフェースContext
      パラメータ:
      name - 破棄されるコンテキストの名前。空は不可
      例外:
      NameNotFoundException - 中間コンテキストが存在しない場合
      NotContextException - 名前がバインドされているが、コンテキストに名前を付けていないか、または該当する型のコンテキストに名前を付けていない場合
      ContextNotEmptyException - 指定されたコンテキストが空でない場合
      NamingException - ネーミング例外が発生した場合
    • destroySubcontext

      public void destroySubcontext(Name name) throws NamingException
      インタフェースからコピーされた説明: Context
      名前付きコンテキストを破棄し、名前空間から削除します。 名前に関連付けられている属性も削除されます。 中間コンテキストは破棄されません。

      このメソッドはべき等です。 ターゲット・コンテキストでターミナル・アトミック名がバインドされていない場合でも成功しますが、中間コンテキストが存在しない場合はNameNotFoundExceptionをスローします。

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

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

      public Context createSubcontext(String name) throws NamingException
      インタフェースからコピーされた説明: Context
      新しいコンテキストを作成してバインドします。 詳細は、Context.createSubcontext(Name)を参照してください。
      定義:
      createSubcontext、インタフェースContext
      パラメータ:
      name - 作成するコンテキストの名前。空は不可
      戻り値:
      新しく作成されたコンテキスト
      例外:
      NameAlreadyBoundException - 名前がすでにバインドされている場合
      InvalidAttributesException - サブコンテキストの作成に必須属性の指定が必要な場合
      NamingException - ネーミング例外が発生した場合
    • createSubcontext

      public Context createSubcontext(Name name) throws NamingException
      インタフェースからコピーされた説明: Context
      新しいコンテキストを作成してバインドします。 指定した名前の新しいコンテキストを作成し、(名前の終端の基本コンポーネント以外のすべてによって名付けられた)ターゲット・コンテキストでバインドします。 すべての中間コンテキストおよびターゲット・コンテキストがすでに存在している必要があります。
      定義:
      createSubcontext、インタフェースContext
      パラメータ:
      name - 作成するコンテキストの名前。空は不可
      戻り値:
      新しく作成されたコンテキスト
      例外:
      NameAlreadyBoundException - 名前がすでにバインドされている場合
      InvalidAttributesException - サブコンテキストの作成に必須属性の指定が必要な場合
      NamingException - ネーミング例外が発生した場合
      関連項目:
    • lookupLink

      public Object lookupLink(String name) throws NamingException
      インタフェースからコピーされた説明: Context
      名前の終端の基本コンポーネントを除くリンクをともなう、名前付きオブジェクトを取得します。 詳細は、Context.lookupLink(Name)を参照してください。
      定義:
      lookupLink、インタフェースContext
      パラメータ:
      name - 検索するオブジェクトの名前
      戻り値:
      ターミナル・リンク(もしあれば)の後ではなく、nameにバインドされたオブジェクト
      例外:
      NamingException - ネーミング例外が発生した場合
    • lookupLink

      public Object lookupLink(Name name) throws NamingException
      インタフェースからコピーされた説明: Context
      名前の終端の基本コンポーネントを除くリンクをともなう、名前付きオブジェクトを取得します。 nameにバインドされたオブジェクトがリンクでない場合は、オブジェクト自体を返します。
      定義:
      lookupLink、インタフェースContext
      パラメータ:
      name - 検索するオブジェクトの名前
      戻り値:
      ターミナル・リンク(もしあれば)の後のオブジェクトではなく、nameにバインドされます。
      例外:
      NamingException - ネーミング例外が発生した場合
      関連項目:
    • getNameParser

      public NameParser getNameParser(String name) throws NamingException
      インタフェースからコピーされた説明: Context
      名前付きコンテキストに関連したパーサーを取得します。 詳細は、Context.getNameParser(Name)を参照してください。
      定義:
      getNameParser、インタフェースContext
      パラメータ:
      name - パーサーの取得元のコンテキストの名前
      戻り値:
      複合名の構文を構文解析して基本コンポーネントにする名前のパーサー
      例外:
      NamingException - ネーミング例外が発生した場合
    • getNameParser

      public NameParser getNameParser(Name name) throws NamingException
      インタフェースからコピーされた説明: Context
      名前付きコンテキストに関連したパーサーを取得します。 名前空間の連合では、さまざまなネーミング・システムで名前の構文が構文解析されます。 アプリケーションからこのメソッドを使用すれば、特定のネーミング・システムのネーミング変換によって名前を基本コンポーネントに構文解析するパーサーを取得できます。 任意の単一ネーミング・システム内で、このメソッドによって返されるNameParserオブジェクトは(equals()テストの使用)と等しくなる必要があります。
      定義:
      getNameParser、インタフェースContext
      パラメータ:
      name - パーサーの取得元のコンテキストの名前
      戻り値:
      複合名の構文を構文解析して基本コンポーネントにする名前のパーサー
      例外:
      NamingException - ネーミング例外が発生した場合
      関連項目:
    • composeName

      public String composeName(String name, String prefix) throws NamingException
      このコンテキストを基準にした名前を持つこのコンテキストの名前を変換します。 初期コンテキストはそれ自体以外のコンテキストに対して相対的に名前を付けることはできないため、prefixパラメータの値は空の名前("")である必要があります。
      定義:
      composeName、インタフェースContext
      パラメータ:
      name - このコンテキストを基準にした名前
      prefix - いずれかの上位コンテキストを基準にした、このコンテキストの名前
      戻り値:
      prefixnameの変換
      例外:
      NamingException - ネーミング例外が発生した場合
    • composeName

      public Name composeName(Name name, Name prefix) throws NamingException
      このコンテキストを基準にした名前を持つこのコンテキストの名前を変換します。 初期コンテキストは、それ自体以外のコンテキストに対して相対的に名前を付けることはできないため、prefixパラメータの値は空の名前である必要があります。
      定義:
      composeName、インタフェースContext
      パラメータ:
      name - このコンテキストを基準にした名前
      prefix - いずれかの上位コンテキストを基準にした、このコンテキストの名前
      戻り値:
      prefixnameの変換
      例外:
      NamingException - ネーミング例外が発生した場合
      関連項目:
    • addToEnvironment

      public Object addToEnvironment(String propName, Object propVal) throws NamingException
      インタフェースからコピーされた説明: Context
      このコンテキストの環境に、新しい環境プロパティを追加します。 プロパティがすでに存在する場合、値は上書きされます。 環境プロパティの詳細は、クラスの説明を参照してください。
      定義:
      addToEnvironment、インタフェースContext
      パラメータ:
      propName - 追加する環境プロパティの名前。nullは不可
      propVal - 追加するプロパティの値。nullは不可
      戻り値:
      プロパティの以前の値、またはプロパティが以前は環境になかった場合はnull
      例外:
      NamingException - ネーミング例外が発生した場合
      関連項目:
    • removeFromEnvironment

      public Object removeFromEnvironment(String propName) throws NamingException
      インタフェースからコピーされた説明: Context
      このコンテキストの環境から環境プロパティを削除します。 環境プロパティの詳細は、クラスの説明を参照してください。
      定義:
      removeFromEnvironment、インタフェースContext
      パラメータ:
      propName - 削除する環境プロパティの名前。nullは不可
      戻り値:
      プロパティの以前の値、またはプロパティが環境になかった場合はnull
      例外:
      NamingException - ネーミング例外が発生した場合
      関連項目:
    • getEnvironment

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

      呼出し元が、返されるオブジェクトを変更してはいけません。そのコンテキストへの影響は未定義です。 このコンテキストの環境は、addToEnvironment()およびremoveFromEnvironment()を使用して変更できます。

      定義:
      getEnvironment、インタフェースContext
      戻り値:
      このコンテキストの環境。null以外
      例外:
      NamingException - ネーミング例外が発生した場合
      関連項目:
    • close

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

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

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

      public String getNameInNamespace() throws NamingException
      インタフェースからコピーされた説明: Context
      独自の名前空間でこのコンテキストの完全な名前を取得します。

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

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