Bonjour,
Voici un code qui se connecte bien à un annuaire LDAP :
... et si j'ai bien compris la commande "environment.put(Context.PROVIDER_URL,"ldap://192.168.2.15:389/ou=Users,dc=entreprise,dc=org");" devrait positionner la connexion au nœud de l'arborescence LDAP des utilisateurs (soit Users dans le LDAP) de l'entreprise.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 Hashtable<String, String> environment = new Hashtable<String, String>(); environment.put(Context.INITIAL_CONTEXT_FACTORY, "com.sun.jndi.ldap.LdapCtxFactory"); environment.put(Context.PROVIDER_URL,"ldap://192.168.2.15:389/ou=Users,dc=entreprise,dc=org"); environment.put(Context.SECURITY_AUTHENTICATION, "simple"); environment.put(Context.SECURITY_PRINCIPAL, "cn=admin,dc=org"); environment.put(Context.SECURITY_CREDENTIALS, "password"); dirContext = new InitialDirContext(environment);
Par contre dès que je désire lire une entrée utilisateur comme cela :
... l'exception suivante est soulevée :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 Attributes attributs = dirContext.getAttributes("cn=admin"); // cela pourrait être un autre utilisateur Attribute attribut = (Attribute) attributs.get("description") ; System.out.println("Description : " + attribut.get());
Lorsque je passe en mode debug, il semble que l'objet dirContext ne contienne pas les enregistrement utilisateurs.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 javax.naming.NameNotFoundException: [LDAP: error code 32 - No Such Object]; remaining name 'cn=admin'
Pourquoi autant de mystères ?
Merci pour votre aide car je galèèèèrrrrrrrrrrrrrrrrrrrreeeeeeeeeeeeeeeeeeee vraiment.
A+![]()
Partager