Мне нужно удалить все поддерево LDAP с помощью кода Java, как параметр -r команды ldapdelete. Как я могу это сделать? Есть ли простой способ удалить все поддерево LDAP с помощью JNDI?
Вам необходимо использовать элемент управления javax.naming.ldap.TreeDelete, если ваш сервер его поддерживает, в противном случае у вас нет другого выбора, кроме как сделать это вручную, сначала на глубину.
javax.naming.ldap.TreeDelete
Обычно удаление целых поддеревьев в LDAP - это то, что вы делаете только в тестах ...
В любом случае, в утилитах тестирования spring-Ldap есть служебный класс 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 () (обратите внимание на перегрузку).