IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

API standards et tierces Java Discussion :

[LDAP] Filtrer les colonnes sur un dirContext.search


Sujet :

API standards et tierces Java

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    C++, Java
    Inscrit en
    Juillet 2014
    Messages
    52
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : C++, Java
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Juillet 2014
    Messages : 52
    Points : 32
    Points
    32
    Par défaut [LDAP] Filtrer les colonnes sur un dirContext.search
    Bonjour,

    J'ai une application Java qui accède à un Active Directory à travers des requêtes LDAP, notamment dans une fonction qui récupère tous les comptes d'utilisateur de l'AD pour les afficher dans un tableau.
    Pour ça, j'utilise la fonction suivante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    NamingEnumeration<SearchResult> results  = dirContext.search(searchBase , searchFilter , searchCtls);
    Jusqu'à présent, tout fonctionnait très bien, mais depuis que le champ userCertificates est renseigné dans mon AD, les performances de l'application ont considérablement chuté.

    Sachant que (si j'ai bien compris) cette fonction dirContext.search ramène TOUS les champs de l'AD pour tous les comptes correspondant à mon filtre (searchFilter), je récupère parmi ceux-ci des champs qui ne me sont pas utiles dans mon application, dont le champ userCertificates.

    J'aurais donc voulu pouvoir sélectionner lors de ma requête search les champs de l'AD qui m'intéressent uniquement.

    En faisant des recherches sur Google, j'ai trouvé la page suivante :
    http://www.java2s.com/Code/JavaAPI/j...ntrolscons.htm

    Mais la solution proposée ici ne me permet d'effectuer ce filtre que sur les résultats après les avoirs récupérés.
    Or j'aurais voulu les filtrer avant, c'est à dire ne récupérer QUE les champs AD qui m'intéressent.

    Auriez-vous une idée à me proposer pour cela ?

    Merci d'avance pour votre aide.

    Cordialement

  2. #2
    Membre confirmé Avatar de gronono
    Inscrit en
    Novembre 2003
    Messages
    456
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations forums :
    Inscription : Novembre 2003
    Messages : 456
    Points : 482
    Points
    482
    Par défaut
    Je crois qu'il faut que tu utilises la méthode https://docs.oracle.com/javase/7/doc...va.lang.String[]) qui te permet de sélectionner les attributs à retourner.

  3. #3
    Nouveau membre du Club
    Homme Profil pro
    C++, Java
    Inscrit en
    Juillet 2014
    Messages
    52
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : C++, Java
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Juillet 2014
    Messages : 52
    Points : 32
    Points
    32
    Par défaut
    Merci pour ta réponse, gronono.
    J'avais trouvé finalement vendredi comment le faire, en précisant un tableau d'attributs, et réussi à le faire fonctionner vendredi soir.

    Pour information, j'ai remplacé mon code suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    SearchControls searchCtls = new SearchControls();
    searchCtls.setSearchScope(SearchControls.SUBTREE_SCOPE);
    Par ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    String[] attrs = {"cn", "sn", "givenName", "distinguishedName"};
    SearchControls searchCtls = new SearchControls(SearchControls.SUBTREE_SCOPE, 0, 0, attrs, false, false);
    Et ça fonctionne parfaitement

Discussions similaires

  1. Filtrer les doublons sur plusieurs colonnes
    Par henri228 dans le forum Conception
    Réponses: 2
    Dernier message: 07/05/2010, 23h21
  2. [OpenOffice][Texte] Supprimer les colonne sur une page
    Par sondo dans le forum OpenOffice & LibreOffice
    Réponses: 3
    Dernier message: 12/02/2010, 13h37
  3. [VB6] Filtrer les entrées sur une BD access
    Par jfdmagic dans le forum VB 6 et antérieur
    Réponses: 6
    Dernier message: 16/06/2009, 17h20
  4. [VBA-E] Trier les colonnes sur toute la feuille
    Par tro2blabla dans le forum Macros et VBA Excel
    Réponses: 11
    Dernier message: 30/05/2006, 12h49
  5. Imprimer toutes les colonnes sur une même feuille
    Par Soulghard dans le forum Access
    Réponses: 1
    Dernier message: 02/02/2006, 13h10

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo