11.4 OJDSのAPIおよびクラス

11.4.1 oracle.aurora.jndi.ojds.OjdsClientContext

このクラスは、javax.naming.directory.DirContextインタフェースを実装します。データベースとの接続を確立し、OJDSをサポートするために必要なすべてのファンクションを実行します。次のメソッドを除いて、[DirContext]で説明されているすべてのメソッドがサポートされています。

  • getSchema

  • getSchemaClassDefintion

  • modifyAttributes

  • search

このクラスは、JAVA JDKベースのクライアントでInitialDirContextが作成されると自動的に作成されます。クライアント・アプリケーションとOJDSの間の通信およびオブジェクト・トランスポートを提供します。

接続を完了するには、次のJNDIプロパティを特定の値に設定する必要があります。

  • java.naming.factory.initialoracle.aurora.jndi.ojds.OjdsIntialContextFactoryに設定します。

  • java.naming.security.principalを接続スキーマ名に設定します。

  • java.naming.security.credentialsをスキーマ・パスワードに設定します。

  • java.naming.provider.urlを有効なOJDS URLに設定します。

これらのプロパティは、次のコード・スニペットに示すように設定できます。

Hashtable env = new Hashtable();
env.put("java.naming.factory.initial", "oracle.aurora.jndi.ojds.OjdsInitialContextFactory");
env.put(Context.SECURITY_PRINCIPAL, "HR");
env.put(Context.SECURITY_CREDENTIALS, "<password>");
env.put(Context.PROVIDER_URL,"ojds://thin:localhost:5521:j3");

11.4.2 oracle.aurora.jndi.ojds.OjdsServerContext

このクラスは、javax.naming.directory.DirContextインタフェースを実装します。OJDS永続ストアとの通信には、内部データベース接続が使用されます。次のメソッドを除いて、[DirContext]で説明されているすべてのメソッドがサポートされています。

  • getSchema

  • getSchemaClassDefintion

  • modifyAttributes

  • search

このクラスは、データベース常駐アプリケーションでInitialDirContextが作成されると自動的に作成されます。OJDS永続ストアとの通信には、データベース内部のJDBCドライバが使用されます。

アプリケーションはloginスキーマとして実行されるため、OjdsServerContextではOjdsClientContextの4つの環境プロパティは無視されます。接続は、kprb [JDBC]内部ドライバを使用して行われます。Javaストアド・プロシージャでサーバー外部のアクセスが必要な場合は、java.naming.provider.urlプロパティの値として、OJDS URLContextを使用する必要があります。

11.4.3 oracle.aurora.jndi.ojds.OjdsInitialContextFactory

このクラスは、javax.naming.spi.InitialContextFactoryインタフェースを実装します。JNDIのInitialContextまたはInitialDriContextクラスは、実行環境に応じてOjdsClientContextOjdsServerContextのいずれかを作成します。

11.4.4 oracle.aurora.jndi.ojds.OjdsURLContextFactory

このクラスでは、OJDSスタイルのURLがサポートされます。URLに提供されたメソッドに応じて、このメソッドは、DirContextか、OJDSに格納されているオブジェクトのインスタンスを戻すことができます。

11.4.5 oracle.aurora.jndi.ojds.OjdsURLContext

このクラスは、oracle.aurora.jndi.ojds.OjdsClientContextを拡張したものです。OJDS URLからの接続情報の抽出と、OJDSへの接続をサポートします。oracle.aurora.jndi.ojds.OjdsClientContextクラスと同じインタフェースがサポートされます。

OjdsURLContextクラスを使用するには、次のパラメータを設定する必要があります。

  • javax.naming.security.principalを接続スキーマに設定します。

  • javax.naming.security.credentialsを接続スキーマのパスワードに設定します。

  • javax.naming.factory.initialoracle.aurora.jndi.ojds.OjdsInitialContextFactoryに設定します。

これらのプロパティは、次のコード・スニペットに示すように設定できます。

Hashtable env = new Hashtable();
env.put("java.naming.factory.initial", "oracle.aurora.jndi.ojds.OjdsInitialContextFactory");
env.put(Context.SECURITY_PRINCIPAL, "HR");
env.put(Context.SECURITY_CREDENTIALS, "<password>");
DirContext dir = 
(new InitialContext(env)).lookup(“ojds://thin:localhost:5521:j3/public./mydir");