クラスInitialLdapContext
- すべての実装されたインタフェース:
Context, DirContext, LdapContext
同期の詳細と、初期コンテキストの作成方法のポリシーについては、javax.naming.InitialContextおよびjavax.naming.InitialDirContextを参照してください。
RequestControls
初期コンテキスト(InitialLdapContext)を作成するときに、リクエスト・コントロールのリストを指定できます。 リスト内のコントロールは、コンテキスト、またはコンテキストから派生したコンテキストによって実行された暗黙的なLDAPバインド操作のための要求コントロールとして使用されます。 これらのコントロールを接続要求コントロールといいます。 getConnectControls()を使用して、コンテキストの接続リクエスト制御を取得します。
初期コンテキスト・コンストラクタに指定された要求コントロールは、検索およびルックアップなどの後続のコンテキスト操作のコンテキスト要求コントロールとしては使用されません。 コンテキスト・リクエスト・コントロールは、setRequestControls()を使用して設定および更新されます。
したがって、コンテキストに関連した要求コントロールには、接続要求コントロールとコンテキスト要求コントロールの2種類のセットを持つことがあります。 このことは、コンテキスト操作と暗黙的なLDAP「バインド」操作の両方に適用できない可能性のあるクリティカルなコントロールを送る必要のあるアプリケーションには必要です。 一般ユーザーのプログラムは次のように処理されます。
最初に初期コンテキスト(InitialLdapContext lctx = new InitialLdapContext(env, critConnCtls); lctx.setRequestControls(critModCtls); lctx.modifyAttributes(name, mods); Controls[] respCtls = lctx.getResponseControls();
critConnCtls)を作成するためのクリティカル・コントロールを指定してから、コンテキスト操作のコンテキストのリクエスト・コントロール(critModCtls)を設定します。 なんらかの理由でlctxをサーバーに再接続する必要がある場合は、critConnCtlsを使用します。 リクエスト制御の詳細は、LdapContextインタフェースを参照してください。
サービス・プロバイダ実装者は、実装の詳細について、LdapContextクラス説明の"サービス・プロバイダ"セクションを読み取る必要があります。
- 導入されたバージョン:
- 1.3
- 関連項目:
-
フィールドのサマリー
クラスで宣言されたフィールド InitialContext
defaultInitCtx, gotDefault, myProps修飾子と型フィールド説明protected ContextNamingManager.getInitialContext()を呼び出した結果を保持するフィールドです。protected boolean初期コンテキストがNamingManager.getInitialContext()の呼出しによって取得されたかを示すフィールドです。このInitialContextに関連した環境です。インタフェースContextで宣言されたフィールド
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修飾子と型フィールド説明static final String要求されたサービスの権限を指定するための、環境プロパティの名前を保持する定数です。static final Stringサービスのプロトコルによってデータを返すときに使用するバッチ・サイズを指定するための、環境プロパティの名前を保持する定数です。static final StringJNDI URLコンテキスト(dns://somehost/wiz.comなど)に使用するDNSホスト名およびドメイン名を指定するための、環境プロパティの名前を保持する定数です。static final String使用する初期コンテキスト・ファクトリを指定するための、環境プロパティの名前を保持する定数です。static final Stringサービスに使用する優先言語を指定するための、環境プロパティの名前を保持する定数です。static final String使用するオブジェクト・ファクトリのリストを指定するための、環境プロパティの名前を保持する定数です。static final String使用するサービス・プロバイダの構成情報を指定するための、環境プロパティの名前を保持する定数です。static final Stringサービス・プロバイダによって参照が処理される方法を指定するための、環境プロパティの名前を保持する定数です。static final String使用するセキュリティ・レベルを指定するための、環境プロパティの名前を保持する定数です。static final Stringサービスに対する呼出し側を認証する主体の資格を指定するための、環境プロパティの名前を保持する定数です。static final Stringサービスに対する呼出し側を認証する主体の識別情報を指定するための、環境プロパティの名前を保持する定数です。static final String使用するセキュリティ・プロトコルを指定するための、環境プロパティの名前を保持する定数です。static final String使用する状態ファクトリのリストを指定するための、環境プロパティの名前を保持する定数です。static final StringURLコンテキスト・ファクトリをロードするときに使用するパッケージ接頭辞のリストを指定するための、環境プロパティの名前を保持する定数です。インタフェースで宣言されたフィールド DirContext
ADD_ATTRIBUTE, REMOVE_ATTRIBUTE, REPLACE_ATTRIBUTE修飾子と型フィールド説明static final intこの定数は、指定された値で属性を追加することを指定します。static final intこの定数は、指定された属性値を属性から削除することを指定します。static final intこの定数は、指定された値で属性を置換することを指定します。インタフェースで宣言されたフィールド LdapContext
CONTROL_FACTORIES -
コンストラクタのサマリー
コンストラクタコンストラクタ説明環境プロパティまたは接続要求コントロールを使用しないで、初期コンテキストを構築します。InitialLdapContext(Hashtable<?, ?> environment, Control[] connCtls) 環境プロパティおよび接続要求コントロールを使用して、初期コンテキストを構築します。 -
メソッドのサマリー
修飾子と型メソッド説明extendedOperation(ExtendedRequest request) 拡張操作を実行します。Control[]このコンテキストに有効な接続要求コントロールを取得します。Control[]このコンテキストに有効な要求コントロールを取得します。Control[]このコンテキストで最後に呼び出されたメソッドの結果として生成された応答コントロールを取得します。newInstance(Control[] reqCtls) このコンテキストの新しいインスタンスを要求コントロールを使って生成します。void指定されたコントロールとこのコンテキスト環境を使ってLDAPサーバーに再接続します。voidsetRequestControls(Control[] requestControls) このコンテキストで引き続き呼び出されるメソッドに要求コントロールを設定します。クラスで宣言されたメソッド InitialDirContext
bind, bind, createSubcontext, createSubcontext, getAttributes, getAttributes, getAttributes, getAttributes, getSchema, getSchema, getSchemaClassDefinition, getSchemaClassDefinition, modifyAttributes, modifyAttributes, modifyAttributes, modifyAttributes, rebind, rebind, search, search, search, search, search, search, search, search修飾子と型メソッド説明voidbind(String name, Object obj, Attributes attrs) 関連付けられている属性とともに、名前をオブジェクトにバインドします。voidbind(Name name, Object obj, Attributes attrs) 関連付けられている属性とともに、名前をオブジェクトにバインドします。createSubcontext(String name, Attributes attrs) 関連付けられている属性とともに、名前をオブジェクトにバインドします。createSubcontext(Name name, Attributes attrs) 関連付けられている属性とともに、名前をオブジェクトにバインドします。getAttributes(String name) 名前付きオブジェクトに関連付けられている属性をすべて取得します。getAttributes(String name, String[] attrIds) 名前付きオブジェクトに関連付けられている属性で選択されたものを取得します。getAttributes(Name name) 名前付きオブジェクトに関連付けられている属性をすべて取得します。getAttributes(Name name, String[] attrIds) 名前付きオブジェクトに関連付けられている属性で選択されたものを取得します。名前付きオブジェクトに関連したスキーマを取得します。名前付きオブジェクトに関連したスキーマを取得します。指定されたオブジェクトのクラス定義のスキーマ・オブジェクトを含むコンテキストを取得します。getSchemaClassDefinition(Name name) 指定されたオブジェクトのクラス定義のスキーマ・オブジェクトを含むコンテキストを取得します。voidmodifyAttributes(String name, int mod_op, Attributes attrs) 名前付きオブジェクトに関連付けられている属性を変更します。voidmodifyAttributes(String name, ModificationItem[] mods) 順序付けされた変更リストを使用して、指定されたオブジェクトに関連付けられている属性を変更します。voidmodifyAttributes(Name name, int mod_op, Attributes attrs) 名前付きオブジェクトに関連付けられている属性を変更します。voidmodifyAttributes(Name name, ModificationItem[] mods) 順序付けされた変更リストを使用して、指定されたオブジェクトに関連付けられている属性を変更します。voidrebind(String name, Object obj, Attributes attrs) 関連付けられている属性とともに名前をオブジェクトにバインドし、既存のバインディングをオーバーライドします。voidrebind(Name name, Object obj, Attributes attrs) 関連付けられている属性とともに名前をオブジェクトにバインドし、既存のバインディングをオーバーライドします。search(String name, String filterExpr, Object[] filterArgs, SearchControls cons) 名前付きコンテキストまたは名前付きオブジェクトで、指定された検索フィルタを満たすエントリを検索します。search(String name, String filter, SearchControls cons) 名前付きコンテキストまたは名前付きオブジェクトで、指定された検索フィルタを満たすエントリを検索します。search(String name, Attributes matchingAttributes) 指定された属性のセットを含むオブジェクトを単一コンテキストで検索します。search(String name, Attributes matchingAttributes, String[] attributesToReturn) 指定された属性のセットを含むオブジェクトを単一コンテキストで検索し、選択した属性を取得します。search(Name name, String filterExpr, Object[] filterArgs, SearchControls cons) 名前付きコンテキストまたは名前付きオブジェクトで、指定された検索フィルタを満たすエントリを検索します。search(Name name, String filter, SearchControls cons) 名前付きコンテキストまたは名前付きオブジェクトで、指定された検索フィルタを満たすエントリを検索します。search(Name name, Attributes matchingAttributes) 指定された属性のセットを含むオブジェクトを単一コンテキストで検索します。search(Name name, Attributes matchingAttributes, String[] attributesToReturn) 指定された属性のセットを含むオブジェクトを単一コンテキストで検索し、選択した属性を取得します。クラスで宣言されたメソッド InitialContext
addToEnvironment, bind, bind, close, composeName, composeName, createSubcontext, createSubcontext, destroySubcontext, destroySubcontext, doLookup, doLookup, getDefaultInitCtx, getEnvironment, getNameInNamespace, getNameParser, getNameParser, getURLOrDefaultInitCtx, getURLOrDefaultInitCtx, init, list, list, listBindings, listBindings, lookup, lookup, lookupLink, lookupLink, rebind, rebind, removeFromEnvironment, rename, rename, unbind, unbind修飾子と型メソッド説明addToEnvironment(String propName, Object propVal) このコンテキストの環境に、新しい環境プロパティを追加します。void名前をオブジェクトにバインドします。void名前をオブジェクトにバインドします。voidclose()このコンテキストを閉じます。composeName(String name, String prefix) このコンテキストを基準にした名前を持つこのコンテキストの名前を変換します。composeName(Name name, Name prefix) このコンテキストを基準にした名前を持つこのコンテキストの名前を変換します。createSubcontext(String name) 新しいコンテキストを作成してバインドします。createSubcontext(Name name) 新しいコンテキストを作成してバインドします。voiddestroySubcontext(String name) 名前付きコンテキストを破棄し、名前空間から削除します。voiddestroySubcontext(Name name) 名前付きコンテキストを破棄し、名前空間から削除します。static <T> T名前付きオブジェクトを取得するstaticメソッドです。static <T> T名前付きオブジェクトを取得するstaticメソッドです。protected ContextNamingManager.getInitialContext()を呼び出すことによって初期コンテキストを取得し、それをdefaultInitCtx内にキャッシュします。Hashtable<?, ?> このコンテキストで有効な環境を取得します。独自の名前空間でこのコンテキストの完全な名前を取得します。getNameParser(String name) 名前付きコンテキストに関連したパーサーを取得します。getNameParser(Name name) 名前付きコンテキストに関連したパーサーを取得します。protected ContextgetURLOrDefaultInitCtx(String name) 文字列名nameを解決するためのコンテキストを取得します。protected ContextgetURLOrDefaultInitCtx(Name name) nameを解決するためのコンテキストを取得します。protected void指定した環境を使用して初期コンテキストを初期化します。バインドされたオブジェクトのクラス名とともに、名前付きコンテキストでバインドされた名前を列挙します。バインドされたオブジェクトのクラス名とともに、名前付きコンテキストでバインドされた名前を列挙します。listBindings(String name) バインドされたオブジェクトとともに、名前付きコンテキストでバインドされた名前を列挙します。listBindings(Name name) バインドされたオブジェクトとともに、名前付きコンテキストでバインドされた名前を列挙します。名前付きオブジェクトを取得します。名前付きオブジェクトを取得します。lookupLink(String name) 名前の終端の基本コンポーネントを除くリンクをともなう、名前付きオブジェクトを取得します。lookupLink(Name name) 名前の終端の基本コンポーネントを除くリンクをともなう、名前付きオブジェクトを取得します。void名前をオブジェクトにバインドし、既存のバインディングを上書きします。void名前をオブジェクトにバインドし、既存のバインディングを上書きします。removeFromEnvironment(String propName) このコンテキストの環境から環境プロパティを削除します。void新しい名前を、以前の名前にバインドされたオブジェクトにバインドし、以前の名前をアンバインドします。void新しい名前を、以前の名前にバインドされたオブジェクトにバインドし、以前の名前をアンバインドします。void名前付きオブジェクトをアンバインドします。void名前付きオブジェクトをアンバインドします。クラスオブジェクトで宣言されたメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait修飾子と型メソッド説明protected Objectclone()このオブジェクトのコピーを作成して、返します。booleanこのオブジェクトと他のオブジェクトが等しいかどうかを示します。protected voidfinalize()削除予定のため非推奨: このAPI要素は、将来のバージョンで削除される可能性があります。最終決定は非推奨であり、将来のリリースで削除される可能性があります。final Class<?> getClass()このObjectの実行時クラスを返します。inthashCode()このオブジェクトに対するハッシュ・コード値を返します。final voidnotify()このオブジェクトのモニターで待機中のスレッドを1つ再開します。final voidこのオブジェクトのモニターで待機中のすべてのスレッドを再開します。toString()オブジェクトの文字列表現を返します。final voidwait()現在のスレッドが目覚めるまで待機します。通常、notifiedまたはinterruptedです。final voidwait(long timeoutMillis) 現在のスレッドは、通常、notifiedまたはinterruptedであるか、一定のリアルタイムが経過するまで、目覚めるまで待機します。final voidwait(long timeoutMillis, int nanos) 現在のスレッドは、通常、notifiedまたはinterruptedであるか、一定のリアルタイムが経過するまで、目覚めるまで待機します。
-
コンストラクタの詳細
-
InitialLdapContext
public InitialLdapContext() throws NamingException環境プロパティまたは接続要求コントロールを使用しないで、初期コンテキストを構築します。new InitialLdapContext(null, null)と等価です。- スロー:
NamingException- ネーミング例外が発生した場合
-
InitialLdapContext
public InitialLdapContext(Hashtable<?, ?> environment, Control[] connCtls) throws NamingException環境プロパティおよび接続要求コントロールを使用して、初期コンテキストを構築します。 環境プロパティの詳細は、javax.naming.InitialContextを参照してください。このコンストラクタでは、パラメータの変更または参照の保存は行われませんが、複製またはコピーが保存されます。 呼出し元は、
environmentがコンストラクタに渡された後、変更可能なキーおよび値を変更しないでください。connCtlsは、基礎となるコンテキスト・インスタンスの接続リクエスト制御として使用されます。 詳細については、クラスの説明を参照してください。- パラメータ:
environment- 初期のDirContextを作成するために使用される環境。 nullは空の環境を示す。connCtls- 初期コンテキストの接続要求コントロール。 nullの場合、接続要求コントロールは使用されない。- スロー:
NamingException- ネーミング例外が発生した場合- 関連項目:
-
-
メソッドの詳細
-
extendedOperation
public ExtendedResponse extendedOperation(ExtendedRequest request) throws NamingException インタフェースからコピーされた説明:LdapContext拡張操作を実行します。 このメソッドを使用して、LDAPv3拡張操作をサポートします。- 定義:
extendedOperation、インタフェースLdapContext- パラメータ:
request- 実行されるnull以外の要求。- 戻り値:
- 操作のnullの可能性がある応答。nullは操作によって応答が生成されなかったを示す。
- スロー:
NamingException- 拡張操作の実行中にエラーが発生した場合。
-
newInstance
public LdapContext newInstance(Control[] reqCtls) throws NamingException インタフェースからコピーされた説明:LdapContextこのコンテキストの新しいインスタンスを要求コントロールを使って生成します。 このメソッドは、マルチ・スレッドのアクセスのためにこのコンテキスト・インスタンスを新たに作成する便利な手法です。 たとえば、複数のスレッドで個別のコンテキスト要求コントロールを使用する場合は、スレッドごとにこのメソッドを使用して、コンテキストの独自のコピーの取得、およびコンテキスト要求コントロールの設定と取得を行うことができます。このとき、他のスレッドと同期化する必要はありません。新規コンテキストには、このコンテキストと同じ環境プロパティ、接続要求コントロールがあります。 詳細については、クラスの説明を参照してください。 このコンテキストと新規コンテキストの間で、同じネットワーク接続またはその他のリソースを共有することもできます。ただし、各コンテキストの間で競合が発生する場合は、共有できません。
- 定義:
newInstance、インタフェースLdapContext- パラメータ:
reqCtls- 新しいコンテキストに使用するnullの可能性がある要求コントロール。 nullの場合は、要求コントロールを使用しないで初期化される。- 戻り値:
- null以外の
LdapContextインスタンス。 - スロー:
NamingException- 新しいインスタンスの作成中にエラーが発生した場合。- 関連項目:
-
reconnect
public void reconnect(Control[] connCtls) throws NamingException インタフェースからコピーされた説明:LdapContext指定されたコントロールとこのコンテキスト環境を使ってLDAPサーバーに再接続します。このメソッドは、LDAPのバインド操作を明示的に初期化する方法です。 このメソッドを使って、LDAPバインド操作に要求コントロールを設定したり、またはその操作によって返される応答コントロールを取得するために明示的にサーバーに接続できます。
このメソッドは、このコンテキストの
connCtlsを新しい接続リクエスト制御に設定します。 このコンテキストのコンテキスト要求コントロールは影響を受けません。 このメソッドの起動後、connCtlsを使用して後続の暗黙的な再接続が実行されます。connCtlsは、このコンテキストから導出された新しいコンテキスト・インスタンスの接続リクエスト制御としても使用されます。 これらの接続リクエスト制御は、setRequestControls()の影響を受けません。実装の詳細については、実装側であるサービス・プロバイダは、クラスの「サービス・プロバイダ」セクションをよく読んでください。
- 定義:
reconnect、インタフェースLdapContext- パラメータ:
connCtls- 使用するnullの可能性があるコントロール。 nullの場合、コントロールが使用されない。- スロー:
NamingException- 再接続中にエラーが発生した場合。- 関連項目:
-
getConnectControls
public Control[] getConnectControls() throws NamingExceptionインタフェースからコピーされた説明:LdapContextこのコンテキストに有効な接続要求コントロールを取得します。 コントロールは、JNDI実装が所有していて、不変です。 配列、コントロールのどちらも、呼出し側は変更できません。- 定義:
getConnectControls、インタフェースLdapContext- 戻り値:
- コントロールのnullの可能性がある配列。nullは、このコンテキストに対して接続コントロールが設定されていないことを示す。
- スロー:
NamingException- 要求コントロールの取得中にエラーが発生した場合。
-
setRequestControls
public void setRequestControls(Control[] requestControls) throws NamingException インタフェースからコピーされた説明:LdapContextこのコンテキストで引き続き呼び出されるメソッドに要求コントロールを設定します。 この要求コントロールは、JNDI実装が所有していて、不変です。 配列、コントロールのどちらも、呼出し側は変更できません。これにより、以前のリクエスト制御がすべて削除され、このコンテキストで起動された後続のメソッドで使用するための
requestControlsが追加されます。 このメソッドは、このコンテキストの接続要求コントロールには影響を与えません。requestControlsは、setRequestControls()の次の呼出しまで有効になります。nullまたは空の配列を指定してsetRequestControls()を明示的に起動し、コンテキスト・メソッドに影響を与えないようにコントロールをクリアする必要があります。 このコンテキストで有効なリクエスト・コントロールを確認するには、getRequestControls()を使用します。- 定義:
setRequestControls、インタフェースLdapContext- パラメータ:
requestControls- 使用するnullの可能性があるコントロール。 nullの場合、コントロールが使用されない。- スロー:
NamingException- 要求コントロールの設定中にエラーが発生した場合。- 関連項目:
-
getRequestControls
public Control[] getRequestControls() throws NamingExceptionインタフェースからコピーされた説明:LdapContextこのコンテキストに有効な要求コントロールを取得します。 この要求コントロールは、JNDI実装が所有していて、不変です。 配列、コントロールのどちらも、呼出し側は変更できません。- 定義:
getRequestControls、インタフェースLdapContext- 戻り値:
- コントロールのnullの可能性がある配列。nullは、このコンテキストに対して要求コントロールが設定されていないことを示す。
- スロー:
NamingException- 要求コントロールの取得中にエラーが発生した場合。- 関連項目:
-
getResponseControls
public Control[] getResponseControls() throws NamingExceptionインタフェースからコピーされた説明:LdapContextこのコンテキストで最後に呼び出されたメソッドの結果として生成された応答コントロールを取得します。 この応答コントロールは、JNDI実装が所有していて、不変です。 配列、コントロールのどちらも、呼出し側は変更できません。これらの応答コントロールには、正常に終了した操作または失敗した操作によって生成されたものがあります。
レスポンス制御を返すコンテキスト・メソッドが呼び出されると、前のメソッド呼出しからのレスポンス制御がクリアされます。
getResponseControls()は、LDAPサーバーから受信された順序でコンテキスト・メソッドによって使用されるLDAP操作によって生成されたすべてのレスポンス制御を返します。getResponseControls()を起動しても、レスポンス制御はクリアされません。 コントロールを返すことができる次のコンテキスト・メソッドが呼び出されるまで何度でも呼び出したり、同じコントロールを戻したりすることが可能です。- 定義:
getResponseControls、インタフェースLdapContext- 戻り値:
- nullの可能性があるコントロールの配列。 nullの場合、このコンテキストで呼び出された以前のメソッドはコントロールを生成していない。
- スロー:
NamingException- 応答コントロールの取得中にエラーが発生した場合。
-