Interstage Application Server Smart Repository運用ガイド |
目次 索引 |
第6章 アプリケーションの作成(JNDI) | > 6.2 サンプルプログラム |
サンプルプログラムのコンパイルから実行までの手順について説明します。
chmod +w example |
サンプルソース |
パラメタ |
概要 |
備考 |
共通パラメタ |
ldapurl |
リポジトリサーバのURL情報 |
“ldap://ホスト名:ポート番号”の形式で指定してください。 |
binddn |
リポジトリサーバへバインドする際のDN |
|
|
password |
リポジトリサーバへバインドする際のパスワード |
|
|
sslenvfile |
SSL環境定義ファイルの格納場所(パス) |
|
|
ssllogdir |
SSLログファイルの格納場所(パス) |
|
|
AddEntry.java |
add_dn |
追加するエントリのDN |
|
orig |
追加する属性情報 |
追加する属性(BasicAttributesオブジェクト)を設定します。 |
|
DelEntry.java |
del_dn |
削除するエントリのDN |
|
Modattrs.java |
mod_dn |
変更するエントリのDN |
|
mods |
変更する属性情報 |
変更する属性(ModificationItemオブジェクト)を設定します。 |
|
Search.java |
s_base |
サーチベース |
|
filter |
検索フィルタ |
|
コンパイル例を示します。
JDK1.4を使用する場合
C:\Interstage\JDK14\bin\javac Search.java |
JDK1.4を使用する場合
/opt/FJSVawjbk/jdk14/bin/javac Search.java |
コンパイル後に、「Search.class」ファイルが作成されます。
実行例を示します。
JDK1.4を使用する場合
C:\Interstage\JDK14\bin\java Search |
JDK1.4を使用する場合
/opt/FJSVawjbk/jdk14/bin/java Search |
以下の場合、InitialDirContextのclose()メソッドを実行しても即時UNBINDは送出されません。
この場合、以下のタイミングでコネクションが破棄されるまで、クライアントおよびサーバ間でコネクションが累積します。以下のタイミングでは実際にはUNBINDではなくDISCONNECTが送出されます。
サーブレットでJNDIを動作させる場合や、コネクションの生成/破棄を繰り返すプログラムでは、Smart Repositoryサーバにつながらないといった問題を引き起こす可能性があります。
コネクションが累積しないようにするためには、以下のどちらかの方法で検索結果をクリアし、確実にUNBINDが送出されるようにしてください。
DirContext ctx = new InitialDirContext(env); NamingEnumeration results = ctx.search("dc=com", "cn=User001", constraints); while (results != null && results.hasMore()){ SearchResult sr = (SearchResult)results.next(); } |
DirContext ctx = new InitialDirContext(env); NamingEnumeration results = ctx.search("dc=com", "cn=User001", constraints); results.close(); |
目次 索引 |