MaxResultsExceededException が発生する場合は、以下の手順に従ってトラブルシューティングを行います。
LDAP サーバーから検索結果を取得するときに、以下に示す MaxResultsExceededException または類似の例外が発生します。
com.ibm.websphere.wim.exception.MaxResultsExceededException:
CWWIM1018E 検索結果の数が 4500 最大検索限界を超えています。
この例外は、LDAP サーバーから取得した検索結果の項目数が、wimconfig.xml ファイルに指定されている maxSearchResults パラメーターの値を超えた場合にスローされます。
アプリケーションが Virtual member manager の search() メソッドを呼び出すときに、countLimit パラメーターを使用して、検索結果を切り捨てるための値を渡します (この値に達すると検索結果が切り捨てられます)。 以下のサンプル・データ・グラフでは countLimit が 4 に設定されています。つまり、LDAP サーバーから 4 項目が取得されると、結果が切り捨てられます。
<sdo:datagraph xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:sdo="commonj.sdo" xmlns:wim="http://www.ibm.com/websphere/wim">
<wim:Root>
<wim:controls xsi:type="wim:SearchControl" countLimit="4" expression="//entities[@xsi:type='PersonAccount' and uid='*']">
<wim:properties>uid</wim:properties>
<wim:properties>cn</wim:properties>
<wim:properties>sn</wim:properties>
<wim:properties>mail</wim:properties>
</wim:controls>
</wim:Root>
</sdo:datagraph>
アプリケーションが search() メソッドを呼び出すときに countLimit パラメーターが設定されていない場合は、LDAP サーバーからすべての項目が取得されます。LDAP サーバーから取得された項目の数が maxSearchResults 値を超えると、MaxResultsExceededException が発生します。
この例外がスローされないようにするため、countLimit の値を maxSearchResults の値よりも小さくします。
管理コンソールまたはコマンド行インターフェースを使用して maxSearchResults の値を設定することはできません。この値は、wimconfig.xml ファイルを編集して手動で設定します。デフォルトは 4500 です。