2017-05-18 4 views
0

Je veux rechercher le journal des modifications sous "cn = changelog". Je peux rechercher le résultat normalement si les entrées de résultat n'étaient pas beaucoup. Mais s'il y a beaucoup d'entrées dans le résultat, la mémoire ne suffira pas. Donc, je veux mettre en page le résultat. Comment puis-je définir la limite de taille? J'ai également fait référence à https://bugster.forgerock.org/jira/si/jira.issueviews:issue-html/OPENDJ-1218/OPENDJ-1218.html. Bien que je me demande comment définir un filtre pour supporter "changeNumber". Et dans mon résultat, il n'y a pas cet attribut "changeNumber". Pourquoi? S'il vous plaît aidez-moi comment je devrais faire? BTW, j'utilise OpenDJ 3.0.Comment prendre en charge la pagination pour la recherche de journaux de modifications externes dans OpenDJ LDAP?

+0

demande de SearchRequest finale = Requests.newSearchRequest ( "cn = changelog", SearchScope.WHOLE_SUBTREE, "(objectClass = *)", attributs) .addControl (ExternalChangelogRequestControl.newControl (cookies)); final LdapAsyncSearchHandler resultHandler = new LdapAsyncSearchHandler(); final Résultat du résultat = connection.search (request, resultHandler); Liste ldapEntryResult = resultHandler.getResultEntries(); –

+0

J'utilise opendj-sdk. Le filtre est "(objectClass = *)". Et j'ai implémenté ExternalChangelogRequestControl en imitant d'autres contrôles. –

Répondre

0

La taille limite est une option de l'appel client. Vous pouvez toujours spécifier le nombre maximum d'entrées que vous voulez renvoyer (le serveur a sa propre limite et appliquera la plus petite entre les 2). Comment définir la taille limite dépend de ce que vous utilisez comme client, et vous ne l'avez pas mentionné.

Pouvez-vous fournir des détails sur ce que vous utilisez pour effectuer une recherche (outil, bibliothèque ...) et quel est le filtre et les options que vous utilisez actuellement? Il est difficile de fournir de l'aide et des suggestions d'amélioration lorsqu'il n'y a pas de détails.

+0

Si vous utilisez sdk client opendj, le SearchRequest.setSizeLimit() peut être ce que vous cherchez. –