2014-10-02 7 views
1

Есть ли какой-либо метод весной LdapTemplate, который проверяет, существует ли запись?Метод Spring LdapTemplate для проверки наличия записи?

Я мог бы выполнить поиск, но он кажется неуклюжим, если я знаю конкретное DN, которое я хочу проверить. (Мой случай использования: проверка ссылочной целостности из записи группы, чтобы убедиться, что соответствующие DNs пользователей, перечисленное в uniqueMember на самом деле существует.)

+2

Я понимаю, что вы ищете какой-то метод 'boolean exists (DN)'? AFAIK нет такого метода. Вы можете использовать метод 'lookup (DN)', но он либо возвращает объект, если он существует, либо генерирует 'NameNotFoundException', если объект не найден. Поэтому вам нужно поймать исключение. Будет ли это работать на вас? – DB5

ответ

1

При условии, что вы ldapTemplate имеет окнеРазличающееся_имя_базыполь настройку (например, o=mycorp,dc=com), и вы хотите, чтобы проверить, является ли в РДНЕ существует (например, ou=people):

private static boolean rdnExists(LdapTemplate ldapTemplate, String rdn) { 
    try { 
     ldapTemplate.lookup(rdn); 
     return true; 
    } catch (org.springframework.ldap.NamingException ne) { 
     return false; 
    } 
} 

 Смежные вопросы

  • Нет связанных вопросов^_^