J'ai besoin de supprimer toute la sous-arborescence LDAP, par code Java, comme le paramètre -r de la commande ldapdelete. Comment puis je faire ça? Existe-t-il un moyen simple de supprimer toute la sous-arborescence LDAP avec JNDI?Java JNDI Supprimer toute la sous-arborescence LDAP
Répondre
généralement la suppression des sous-arbres entiers dans LDAP est quelque chose que vous faites que dans les tests ...
Quoi qu'il en soit, il y a une classe utilitaire dans utils de test ressort Ldap appelé LdaptestUtils qui fait exactement ce que vous voulez. Je ne vais pas copier le code ici. Jetez un oeil à http://www.jarvana.com/jarvana/view/org/springframework/ldap/spring-ldap/1.3.0.RELEASE/spring-ldap-1.3.0.RELEASE-sources.jar!/org/springframework/ldap/test/LdapTestUtils.java?format=ok
Le nom de la méthode pertinente est clearSubContexts() (notez la surcharge).
Vous devez utiliser le contrôle javax.naming.ldap.TreeDelete
, si votre serveur le prend en charge, sinon vous n'avez pas d'autre choix que de le faire à la main, en profondeur d'abord.