我收到此错误:"LDAPSearchException: size limit exceeded" error
,服务器仅返回500个结果。我们经验丰富的LDAP管理员向我保证,服务器上未设置此限制。实际上,通过在CLI上使用“ ldapsearch”,我可以获得500多个结果。
本文LDAPException Size Limit exceeded中的建议正是我所需要的。但是,当我尝试在LDAPConnection对象(ld.setSearchConstraints(ldsc);
)上设置LDAPSearchConstraints对象时,出现编译错误,提示该方法不存在:
cannot find symbol
symbol : method setSearchConstraints(com.unboundid.ldap.sdk.migrate.ldapjdk.LDAPSearchConstraints)
location: class com.unboundid.ldap.sdk.LDAPConnection.
有人知道为什么这种方法不可用吗?我尝试了不同版本的
unboundid-ldapsdk
,甚至尝试了pom文件中的不同存储库。另外,如果有人知道如何使用其他方法来检索默认搜索结果以外的内容,请告诉我。我正在使用64位linux(版本:“ 3.2.0-4-amd64”)和Apache Maven 2.2.1(rdebian-8)
Java版本:1.6.0_31
最佳答案
看了API之后,限制搜索结果的正确方法是
com.unboundid.ldap.sdk.LDAPConnection connection = <some connection>
com.unboundid.ldap.sdk.SearchRequest request = new SearchRequest(<your parameters>);
request.setSizeLimit(<your limit>);
SearchResult result = connection.search(request);
发生编译错误,因为您导入错误的LDAPConnection。
com.unboundid.ldap.sdk.migrate.ldapjdk.LDAPConnection setSearchConstraints
com.unboundid.ldap.sdk.LDAPConnection setSearchConstraints的此类