この章では、Java Naming and Directory Interface (JNDI)に対するOracle JVMのサポートについて説明します。この章の内容は、次のとおりです。
JNDIに対するOracle JVMのネイティブ・サポートによって、特定のデータベース接続情報を含むOracleデータ・ソース・オブジェクトをディレクトリ構造内の名前によってバインドできます。この名前を使用して、アプリケーションで接続を確立するための特定の接続情報を取得できます。また、アプリケーションを変更せずに、特定の名前が解決される関連オブジェクトのみを変更することにより、データベース接続プロパティおよび実際のソース・データベースを変更することもできます。さらに、この機能は、オブジェクトおよびオブジェクト参照を格納するための汎用的なディレクトリ・サービスも提供します。
oracle.aurora.jndi.ojds
というOracle Java Directory Service (OJDS)パッケージは、JNDIのサポートを実装するためのAPIを提供します。oracle.aurora.jndi.ojds
パッケージに存在するAPIの詳細は、「OJDSのAPIおよびクラス」を参照してください。
この項では、Oracle JVMでJNDIをサポートするための実装要件について説明します。この項の内容は次のとおりです。
ネームスペースの表記は、一般的なUNIXファイル・システム構造の場合と同様です。ルート・ディレクトリおよびディレクトリ・セパレータは、スラッシュ記号(/)で表記されます。ルート・ディレクトリはSYS
が所有し、SYS
のみがその下に新規のサブディレクトリを作成できます。
OJDSのインストール・プロセス中に、次の2つのディレクトリ(DirContexts
)が作成されます。
/public
ディレクトリ
/public
ディレクトリはテスト用のパブリック領域であり、すべてのユーザーがこのディレクトリ内のオブジェクトをバインド、削除または参照できます。
/etc
ディレクトリ
/etc
ディレクトリは、クライアントが必要とするすべての本番タイプ・オブジェクトのデプロイメント用の領域であり、更新または削除されないように保護されます。/etc
ディレクトリへの書込みはSYS
ユーザーのみが実行できますが、読取りはすべてのユーザーが実行できます。
ディレクトリ構造に格納されたオブジェクトには、許可を割り当てることができます。これらの許可は、次の許可を組み合せたものです。
読取り
書込み
実行
次の表で、ディレクトリ構造に格納されたオブジェクトに割り当てることができる許可について説明します。
アクション | 親コンテキストの許可 | 子(obj/ctx)の許可 |
---|---|---|
bind |
書込み | NA |
unbind |
書込み | 書込み |
createSubcontext |
書込み | NA |
getAttributes |
読取り | 読取り |
rebind |
書込み | 書込み |
destroySub context |
書込み | 書込み |
list |
読取り | 読取り |
listBindings |
読取り | 読取り |
lookup |
読取り | 読取り |
lookupLink |
読取り | 読取り |
rename (target) |
書込み | 書込み(存在する場合) |
rename (source) |
読取り | 読取り |
注意: 操作を正常に実行するには、すべての親コンテキストに実行許可があることが必要です。 |
OJVMSYS
が所有するデータベース表には、各オブジェクトの次の詳細が格納されます。
ネームスペース・メタデータ
バウンド名
属性
パーミッション
格納されたオブジェクト表現
この項では、Oracle Java Directory Serviceの次の概念について説明します。
Oracle Java Directory Service (OJDS)は、javax.naming.directory.DirContext
コンテキストで指定されているとおりにインタフェースを実装する必要があります。javax.naming.directory.DirContext
コンテキスト、oracle.aurora.jndi.ojds.OjdsServerContext
コンテキストおよびoracle.aurora.jndi.ojds.OjdsClientContext
コンテキストは、オブジェクトに関連付けられている属性を調査および更新するメソッドを提供し、サーバー側とクライアント側のそれぞれの実行でのディレクトリ検索を可能にします。
次の表で、コンテキストを作成または使用する際に使用可能なJNDIプロパティについて説明します。
パッケージ名 | 説明 |
---|---|
java.naming.factory.initial |
アプリケーションの初期コンテキストの作成に使用するクラスを指定します。oracle.aurora.jndi.ojds パッケージは、InitialDirContext を作成するためにこのプロパティで使用するoracle.aurora.jndi.ojds.OjdsInitialContextFactory を定義します。 |
java.naming.security.principal |
データベース接続を作成するためのユーザーIDを指定します。このプロパティには値を指定する必要があります。 |
java.naming.security.credentials |
データベース接続を作成するためのパスワードを指定します。このプロパティには値を指定する必要があります。 |
java.naming.provider.url |
データベース接続を作成するための接続URLを指定します。このプロパティはオプションです。 |
java.naming.factory.url.pkgs |
特定のJNDI実装に対するURLハンドラの、コロンで区切られたリストです。oracle.aurora.jndi.ojds.OjdsURLContextFactory クラスは、OJDS URLに基づいてコンテキストを戻します。 |
StateFactory
は、Javaオブジェクトを実装側のJNDIプロバイダに格納できるオブジェクトに変換します。OJDSによってすべてのオブジェクトが変換され、シリアライズ・オブジェクトにバインドされます。OJDSは、この変換に関するjava.io.Serializable
インタフェースの仕様およびJava Object Serialization Specificationに準拠しています。シリアライズされたオブジェクトは、OJDS永続ストアに格納されます。OJDSでは、外部のStateFactory
はサポートされていません。
ObjectFactory
は、実装側のJNDIプロバイダに格納されているオブジェクトを取得して、Javaオブジェクトに変換します。OJDSでは、外部のObjectFactory
はサポートされていません。シリアライズ・オブジェクトが、OJDS永続ストアから取得されたバイナリ形式に基づいて作成されます。オブジェクトがデシリアライズされると、OJDSによってそのオブジェクトは次のいずれかの方法で処理されます。
オブジェクトがContext
の場合、connection
フィールドとenv
フィールドが設定され、DirContext
が戻されます。
オブジェクトがjavax.naming.Reference
の場合、DirectoryManager.getObjectInstance
メソッドを使用してオブジェクトを作成できます。
オブジェクトがContext
でもjavax.naming.Reference
でもない場合、オブジェクトはそのままユーザーに戻されます。
オブジェクトを指定する取得済バイトは、java.io.Serializable
インタフェース標準に準拠している必要があります。オブジェクトを実装するクラスがクライアントで変更されると、オブジェクトのデシリアライズに失敗することがあります。このため、オブジェクト・バイトと、オブジェクト・バイトをデシリアライズするクラスまたはオブジェクト・ストリームとの互換性を保つように注意する必要があります。
OJDSでは、次の形式で指定するURLがサポートされています。
ojds://jdbc_connection_url/path…/object
前述の構文の各要素は次のとおりです。
jdbc_connection_url
は、サポートされているJDBC接続URLの1つです。URLには、ディレクトリに接続するためのjdbc_connection_url
を指定する必要があります。
注意: OJDSプロバイダでは、JDKベースの外部クライアントに対してThinとOCIの両方のURLがサポートされています。たとえば、ThinドライバとOCIドライバにはそれぞれ次のURLを使用できます。thin:localhost:5521:mysid oci:22.133.242:5521:mysid ただし、サーバーでのOJDS URLは、Thin接続タイプにのみサポートされています。URL接続を完了するには、 |
path
は、UNIXタイプのファイル・システムと同様の、スラッシュ脚注1で区切られたリストです。これは、ディレクトリ・ツリー内のノードを表しています。
object
は、コンテキスト内の実際の終端オブジェクト名です。このオブジェクトを省略した場合、パスはスラッシュ(/)で終了します。このような場合は、このパスをルートとして表すDirContext
が戻されます。
例
次のコード・スニペットは、ユーザーHR
として、接続されたOCIドライバを使用してディレクトリ/one/two
内のMyObj
型のオブジェクトmyobj
を参照する方法を示しています。
import javax.naming.*;
.
.
.
Hashtable env = new Hashtable();
env.put(”java.naming.security.principal”,”HR”);
@ env.put(”java.naming.security.credentials”,”<password>”);
MyObj obj = (MyObj)(new InitialDirContext(env)).lookup(ojds://oci:host1:5521:mysid/one/two/myobj”);
JDKクライアントがOJDSを使用するためには、$ORACLE_HOME/jdbc/lib/ojdbc6.jar
および$ORACLE_HOME/javavm/lib/aurora.zip
jarファイルをクラスパスに追加する必要があります。
ネームスペース・ブラウザを使用すると、OJDSに格納されたオブジェクトの許可およびプロパティを参照できます。既存のojvmjava
ユーティリティが拡張され、次の表で説明する操作がサポートされています。
コマンド名 | 説明 |
---|---|
ls |
UNIXのls コマンドと同様に、コンテキストの内容を一覧表示します。 |
rm |
コンテキストまたはオブジェクトを削除します。 |
mkdir |
OJDSでコンテキストを作成します。 |
chown |
特定のコンテキストやオブジェクトなどの所有者を変更します。 |
chmod |
オブジェクトまたはコンテキストに対する権限を変更します。 |
cd |
作業コンテキストを変更します。 |
pwd |
現行作業コンテキストを一覧表示します。 |
ln |
UNIXのシンボリック・リンクと同様に、別の名前を使用して同じオブジェクトを参照します。 |
mv |
コンテキスト(またはオブジェクト)の古い名前を変更するか、新しい名前に再バインドします。 |
bind |
オブジェクト参照またはネーミング・コンテキストをJNDIネームスペースにバインドします。 |
bindds |
データ・ソース・オブジェクトを特定のコンテキストにバインドします。 |
bindurl |
URLオブジェクトを特定のコンテキストにバインドします。 |
拡張されたojvmjava
コマンドを使用すると、OJDSを操作および参照できます。この項では、次のコマンドについて説明します。
ls
コマンドは、コンテキストの内容を表示します。
構文
ls [options] [context1] [context2] [obj|context]...
オプション
次の表で、ls
コマンドのオプションについて説明します。
オプション | 説明 |
---|---|
Context obj |
一覧表示するコンテキストまたはオブジェクトの名前を指定します。 |
-l |
名前、作成時刻、所有者、権限などを含む長い形式でコンテンツを表示します。オブジェクトのクラスを表示します。 |
dir |
UNIXのls –d コマンドと同様に、コンテキストのみを表示します。 |
ldir |
–l コマンドのように長い形式でコンテンツを表示しますが、UNIXの–ldと同様にバインドされたオブジェクトを無視します。 |
R |
子コンテキスト全体を再帰的に一覧表示します。 |
例
次のコマンドは、ルート・コンテキストの内容を短い形式で表示します。
$ ls /
etc/ public/
次のコマンドは、ルート・コンテキストの内容を長い形式で表示します。
$ ls -l Read Write Exec Owner Date Time Type Name PUBLIC SYS PUBLIC SYS Dec 14 14:59 Context etc PUBLIC PUBLIC PUBLIC SYS Dec 14 14:59 Context public
cd
コマンドは、作業コンテキストを変更します。このコマンドは、UNIXのcd
コマンドと同様に、ディレクトリを変更します。
例
次のコマンドは、コンテキストをルート・コンテキストに変更します。
$ cd /
pwdコマンドは、現行作業コンテキストを一覧表示します。
例
現行コンテキストが/test/alpha
の場合、pwd
コマンドの出力は次のようになります。
$ pwd
/test/alpha/
chown
コマンドは、コンテキストまたはオブジェクトの所有権を変更します。
注意: コンテキストまたはオブジェクトの所有権を変更できるのは、SYS ユーザーのみです。 |
構文
chown [options] {user | role} <object name>
オプション
次の表で、chown
コマンドのオプションについて説明します。
オプション | 説明 |
---|---|
User role |
所有者になるユーザーまたはロールの名前を指定します。 |
<object name> |
変更するコンテキストまたはオブジェクトの名前を指定します。 |
-R |
次のものの所有権を再帰的に変更します。
|
例
次のコマンドは、HR
を/alpha/beta/gamma
コマンドの所有者にします。
$ chown HR /alpha/beta/gamma
mkdir
コマンドは、指定した名前でコンテキストを作成します。
注意: 新規のコンテキストを作成するには、ターゲット・コンテキストに対する書込み許可を持っている必要があります。 |
オプション
次の表で、mkdir
コマンドのオプションについて説明します。
オプション | 説明 |
---|---|
<name> |
作成するコンテキストの名前を指定します。 |
-path | -p |
中間コンテキストが存在しない場合は作成します。 |
例
次のコマンドは、/test
コンテキストがすでに存在する場合に、/test/alpha
というコンテキストを作成します。
mkdir /test/alpha
次のコマンドは、/test/alpha/beta
コンテキストが存在しない場合に、/test/alpha/beta/gamma
というコンテキストを作成します。
$ mkdir -path /test/alpha/beta/gamma
rm
コマンドは、UNIXシェル・コマンドのrm
と同様です。このコマンドは、オブジェクトまたはコンテキストを、その内容も含めて削除します。
注意: オブジェクトを削除するには、そのオブジェクトを含むコンテキストに対する書込み権限が必要です。 |
オプション
次の表で、rm
コマンドのオプションについて説明します。
オプション | 説明 |
---|---|
<Object> |
削除するコンテキストまたはオブジェクトの名前を指定します。 |
-recurse | -r |
コンテキストを仮定し、コンテキストとその内容を再帰的に削除します。 |
例
次のコマンドは、オブジェクト/test/bank
を削除します。
rm /test/bank
次のコマンドは、コンテキスト/test/release3
とその内容を削除します。
rm -r /test/release3
ln
コマンドは、UNIXのln
コマンドと同様です。リンクとは、コンテキストまたはオブジェクトのシノニムのことです。コンテキストまたはオブジェクトを移動すると、コンテキストまたはオブジェクトへの参照が無効になることがあります。ln
コマンドは、古い名前でリンクを作成し、古い名前と新しい名前の両方でオブジェクトにアクセスできるようにします。
構文
ln [-symbolic | -s] <object> <link>
オプション
次の表で、ln
コマンドのオプションについて説明します。
オプション | 説明 |
---|---|
-s |
<link> への<object> のソフト・リンクを作成します。 |
<object> |
コンテキストまたはオブジェクトの名前を指定します。 |
<link> |
コンテキストまたはオブジェクトをリンクする先のシノニムの名前を指定します。 |
例
次のコマンドは、オブジェクト名がnew
に変更された後も、old
オブジェクトへのアクセスを保持します。
$ mv old new $ ln new old
mv
コマンドは、コンテキストまたはオブジェクトの名前を新しい名前に変更(または古い名前を再バインド)します。
構文
mv <old> <new>
例
次のコマンドは、コンテキスト/test/foo
の名前を/test/bar
に変更します。
$ mv /test/foo /test/bar
chmod
コマンドは、UNIXシェル・コマンドのchmod
と同様です。このコマンドは、コンテキストまたはオブジェクトに対するユーザーまたはロールの権限を変更します。
注意: オブジェクトに対する権限を変更できるのは、SYS ユーザーまたはオブジェクト所有者のみです。 |
構文
chmod [options] {+|-} {r|w|x} {<user> | <role>, ...} <objectname>
オプション
次の表で、chmod
コマンドのオプションについて説明します。
オプション | 説明 |
---|---|
+/-rwx |
読取り、書込みまたは実行の権限を追加(+)または削除(-)します。 |
<user> | <role> |
追加または削除する権限を所有するユーザーまたはロール |
<objectname> |
権限を変更するコンテキストまたはオブジェクト |
-R |
権限を再帰的に変更します。 |
例
次の例では、/alpha/beta/gamma
コンテキストの権限をHR
およびNANCY
に変更します。
$ chmod +x HR,NANCY /alpha/beta/gamma
注意: 複数のスキーマはカンマでのみ区切ります。 |
次の例では、/alpha/beta/gamma
コンテキストでのHR
の書込み権限を削除します。
$ chmod -w HR /alpha/beta/gamma
bind
コマンドは、オブジェクト参照またはコンテキストをJNDIネームスペースにバインドします。
構文
bind <objectname> [options] [-context] [-rebind] {-class | -c <classname>} [-factory | -f <factory>] [-location | -l <URL>][-string <type_name>
<string_value> [-string <type_name> <string_value> ...]] [-binary <type_name> <string_value> [-binary <type_name> <string_value> ...]]
オプション
次の表で、bind
コマンドのオプションについて説明します。
オプション | 説明 |
---|---|
<objectname> |
バインド先のオブジェクトの名前 |
-context |
バインドするオブジェクトは、ContextまたはInitialContextです。 |
-rebind |
JNDI名がすでに存在する場合、そのバインド先のオブジェクトをこのオブジェクトで置換します。 |
-class <classname> |
バインドされるオブジェクトのクラス名を指定します。 |
-factory <factory> |
オブジェクトを作成するためのファクトリ・クラス名を指定します。JNDIでは、オブジェクトを作成する際にこれが使用されます。 |
-location <URL> |
デフォルトの場所を使用しない場合、ファクトリの場所を指定します。これにはJNDI URLが使用されます。 |
-string <type_name> <string_value> |
オブジェクトの文字列参照属性をタイプ名および値で指定します。 |
-binary <type_name> <string_value> |
オブジェクトのバイナリ参照属性をタイプおよびバイナリ値で指定します。指定された16進文字列値は、バイナリに変換されます。 |
例
次のコマンドは、オブジェクト参照をネームスペースにバインドします。文字列およびバイナリ属性が参照に提供されます。
bind /tmp/myprinter -class gen.Inkjet -factory gen.InkjetFactory -string PRINTERNAME co2 -binary DPI 0X12C
このコマンドは、DataSource
オブジェクトをJNDIネームスペースにバインドします。このコマンドは、指定されたオプションに応じて、汎用データ・ソース、XAデータ・ソースまたはプールされたデータ・ソースをバインドします。
注意: Oracle JVMでは、kprbドライバおよびThinドライバのみがサポートされています。 |
構文
bindds <object_name> [options] [-help | -h] [-describe | -d] [-version | -v] [-dstype <datasource>]
[-host <hostname> -port <portnum> -sid <SID> -driver <driver_type>] [-url <db_url>]
[-g | -grant {<user> | <role>} [,{<user> | <role>}]...] [-recursiveGrant | -rg {<user> |<role>}
[,{<user> | <role>}]...] [-rebind] [-user | -u <user>]
オプション
次の表で、bindds
コマンドのオプションについて説明します。
オプション | 説明 |
---|---|
<objectname> |
オブジェクトをバインドする名前を指定します。 |
-help |
ヘルプ・メッセージを指定します。 |
-describe |
ツール操作を要約します。 |
-version |
バージョン番号を指定します。 |
-dstype <type> |
次のいずれかのタイプから、データ・ソース・タイプを指定します。
|
-host <hostname> -port <portnum> -sid <SID> -driver <drv_type> |
データベースの場所、およびデータベースに接続するためのドライバ・タイプを指定します。あるいは、-url オプション内でこの情報をURL形式で指定することもできます。-sid オプションのデフォルト値は、ORCL です。-driver オプションの値は、thin 、oci またはkprb です。 |
-url <db_url> |
このJDBC URLは、データベースの場所を指定します。 |
-grant <user|role>, <user|role>… |
読取り権限および実行権限を<user> 名と<role> 名のシーケンスに付与します。再バインドする際には、読取り権限または実行権限を持つ既存のユーザーまたはロールを<user> 名および<role> 名で置き換えます。 |
-recursiveGrant <user|role>, <user|role>…. |
指定されたオブジェクトおよびオブジェクトが存在するすべてのコンテキストに、読取り許可および実行許可を再帰的に付与します。コンテキストの許可レベルがSYSの場合、そのコンテキストに対する付与は無視されます。 |
-rebind |
DataSource オブジェクトがすでに存在する場合、このオプションを指定して、既存のデータ・ソースをこの新しいオブジェクトで上書きする必要があります。そうしない場合、このオプションでバインドは実行されません。 |
-user <user> |
データベースに接続するためのユーザー名を指定します。ユーザー名をDataSource オブジェクト内に格納します。データベース接続の作成時にJNDIコンテキスト内でユーザー名を指定しない場合は、このユーザー名が使用されます。 |
例
次の例では、ds1
データ・ソースがネームスペースにバインドされます。
bindds /test/ds1 -host localhost -port 1522 -sid orcl -driver thin bindds /test/ds1 -url jdbc:oracle:thin:@localhost:1522:orcl
この例では、汎用データ・ソース(OracleDataSource
)に対してJDBC Thinドライバを使用します。
bindurl
コマンドは、URLオブジェクトをネームスペースにバインドします。
オプション
次の表で、bindurl
コマンドのオプションについて説明します。
オプション | 説明 |
---|---|
<objectname> |
バインド先のオブジェクトの名前を指定します。 |
-help |
ヘルプ・メッセージを指定します。 |
-describe |
ツール操作を要約します。 |
-version |
bindurl コマンドのバージョンを出力します。 |
-rebind |
JNDI名がすでに存在する場合、このオプションを指定して、既存のJNDI名をこの新しいオブジェクトで上書きする必要があります。そうしない場合、このオプションでバインドは実行されません。 |
-grant <user|role>, <user|role>… |
読取り権限および実行権限を<user> 名と<role> 名のシーケンスに付与します。再バインドする際には、読取り権限または実行権限を持つ既存のユーザーまたはロールを<user> 名および<role> 名で置き換えることができます。 |
-recursiveGrant <user|role>, <user|role>... |
指定されたオブジェクトおよびオブジェクトが存在するすべてのコンテキストに、読取り許可および実行許可を再帰的に付与します。コンテキストの許可レベルがSYS の場合、そのコンテキストに対する付与は無視されます。 |
例
次の例では、URL文字列http://www.oracle.com
がネームスペース内のURL参照/test/myURL
にバインドされます。
bindurl /test/myURL http://www.oracle.com -rebind
-rebind
オプションを使用して、/test/myURL
参照がすでに存在しているかどうかを確認し、存在していれば文字列http://www.oracle.com
で再バインドされます。
この項では、OJDSの次のAPIおよびクラスについて説明します。
このクラスは、javax.naming.directory.DirContext
インタフェースを実装します。データベースとの接続を確立し、OJDSをサポートするために必要なすべてのファンクションを実行します。次のメソッドを除いて、[DirContext]
で説明されているすべてのメソッドがサポートされています。
getSchema
getSchemaClassDefintion
modifyAttributes
search
このクラスは、JAVA JDKベースのクライアントでInitialDirContext
が作成されると自動的に作成されます。クライアント・アプリケーションとOJDSの間の通信およびオブジェクト・トランスポートを提供します。
接続を完了するには、次のJNDIプロパティを特定の値に設定する必要があります。
java.naming.factory.initial
をoracle.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");
このクラスは、javax.naming.directory.DirContext
インタフェースを実装します。OJDS永続ストアとの通信には、内部データベース接続が使用されます。次のメソッドを除いて、[DirContext]
で説明されているすべてのメソッドがサポートされています。
getSchema
getSchemaClassDefintion
modifyAttributes
search
このクラスは、データベース常駐アプリケーションでInitialDirContext
が作成されると自動的に作成されます。OJDS永続ストアとの通信には、データベース内部のJDBCドライバが使用されます。
アプリケーションはlogin
スキーマとして実行されるため、OjdsClientContext
ではOjdsClientContext
の4つの環境プロパティは無視されます。接続は、kprb [JDBC]内部ドライバを使用して行われます。Javaストアド・プロシージャでサーバー外部のアクセスが必要な場合は、java.naming.provider.url
プロパティの値として、「oracle.aurora.jndi.ojds.OjdsInitialContextFactory」で説明されているOJDS URLContext
を使用する必要があります。
このクラスは、javax.naming.spi.InitialContextFactory
インタフェースを実装します。JNDIのInitialContext
またはInitialDriContext
クラスは、実行環境に応じてOjdsClientContext
かOjdsServerContext
のいずれかを作成します。
このクラスでは、OJDSスタイルのURLがサポートされます。URLに提供されたメソッドに応じて、このメソッドは、DirContext
か、OJDSに格納されているオブジェクトのインスタンスを戻すことができます。
このクラスは、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.initial
をoracle.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”);
脚注の凡例
脚注1: スラッシュ記号(\)