Java JNDI删除整个LDAP子树

时间:2010-10-01 13:42:29

标签: java ldap jndi openldap

我需要通过Java代码删除整个LDAP子树,就像ldapdelete命令的-r参数一样。我怎样才能做到这一点? 有没有一种简单的方法可以使用JNDI删除整个LDAP子树?

2 个答案:

答案 0 :(得分:0)

通常在LDAP中删除整个子树只能在测试中进行...

无论如何,spring-Ldap test utils中有一个实用程序类,名为LdaptestUtils,可以满足您的需求。我不会在这里复制代码。看看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

相关的方法名是clearSubContexts()(注意重载)。

答案 1 :(得分:0)

如果您的服务器支持,您需要使用javax.naming.ldap.TreeDelete控件,否则您别无选择,只能手动执行,深度优先。