Interstage Application Server ディレクトリサービス運用ガイド
目次 索引 前ページ次ページ

第8章 アプリケーションの作成(JNDI)> 8.2 ソースプログラムの作成> 8.2.4 エントリの検索

8.2.4.1 検索オプション

 javax.naming.directory.SearchControlsを使用すると、以下の検索オプションを指定できます。

検索対象とする範囲
 検索対象とする範囲を絞り込むことができます。setSearchScope()メソッドを使用します。以下の3つの中から1つを指定します。初期値はONELEVEL_SCOPEです。
 サーチベースに指定した階層以下すべてを検索するときの指定例です。

SearchControls constraints = new SearchControls(); constraints.setSearchScope(SearchControls.SUBTREE_SCOPE);

 
検索結果として取得する属性
 基本的な検索では、読み取れる属性値すべての情報が返されます。アプリケーションの処理内容によって、必要な属性だけを取得することができます。setReturningAttributes()メソッドを使用します。検索結果として取得する属性名を配列で指定します。初期値はnull(すべての属性を返す)です。何も取得しないときは、空の配列を指定します。
 「mail」と「telephonenumber」を取得するときの例です。

String[] attrs = {"mail", "telephonenumber"}; SearchControls constraints = new SearchControls(); constraints.setReturningAttributes(attrs);
 
検索結果の最大エントリ数
 検索結果として受け取るエントリ数を制限できます。setCountLimit()メソッドを使用します。初期値は0(制限しない)です。
 10件で制限する例です。

SearchControls constraints = new SearchControls(); constraints.setCountLimit(10);
 
検索結果の最大待ち時間
 検索での待ち時間を制限できます。setTimeLimit()メソッドを使用します。待ち時間をミリ秒単位で指定します。初期値は0(制限しない)です。
 1秒で制限する例です。

SearchControls constraints = new SearchControls(); constraints.setTimeLimit(1000);
 

クライアントからアクセスするDN(バインドDN)と、サーバ側の検索可能最大エントリ数、検索タイムアウト時間の指定値の組み合わせによっては、検索オプションで指定した値が有効にならない場合があります。クライアント側の指定値とサーバ側の指定値との関係は、Interstage管理コンソールのヘルプを参照してください。

目次 索引 前ページ次ページ

Copyright 2008 FUJITSU LIMITED