Я получаю эту ошибку: ошибка "LDAPSearchException: size limit exceeded" error
и сервер возвращает только 500 результатов. Я уверен, что наш опытный администратор LDAP уверен, что этот лимит не установлен на сервере. В самом деле, я могу получить более 500 результатов, используя "ldapsearch" в CLI.
Предложение в этой статье превысило лимит содержимого LDAPException именно то, что мне нужно. Однако когда я пытаюсь установить объект LDAPSearchConstraints на свой объект LDAPConnection (ld.setSearchConstraints(ldsc);
) Я получаю ошибку компиляции, говоря, что метод не существует:
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