2017-02-21 29 views

ответ

0

понял это с помощью Spring LDAP, то URL LDAP не может добавить RootDSE суффикса: LDAP: // {имя домена}, а затем использовать поиск по шаблону:

LdapTemplate template = new LdapTemplate(ldapContextSource); 
    template.setIgnorePartialResultException(true); 
    String returnedAtts[] = { "configurationNamingContext" }; 
    SearchControls controls = new SearchControls(SearchControls.OBJECT_SCOPE,0,0,returnedAtts,false,false); 

    LikeFilter filter = new LikeFilter ("objectClass", "*"); 
    List<String> result = template.search("", filter.encode(), controls, new AttributesMapper<String>() { 
     public String mapFromAttributes(Attributes attrs) 
       throws NamingException { 
       return attrs.get("configurationNamingContext").get().toString(); 
      } 
      }); 
0

Вы можете удалить некоторые из дополнительных шаблонного при использовании построителя Spring LDAP и выражения Java 8 лямбды:

 List<String> result = ldapTemplate.search(query() 
        .searchScope(SearchScope.OBJECT) 
        .where("objectclass").isPresent(), 
      (AttributesMapper<String>) attrs -> 
        attrs.get("configurationNamingContext").get().toString()); 

Вам также нужен этот импорт:

import static org.springframework.ldap.query.LdapQueryBuilder.*; 

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

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