2014-04-30 3 views
2

이 질문은 가능하면 최선의 방법입니다.새로운 연결을 위해 스프링 ldap 기본을 동적으로 설정하십시오.

코드 내에서 ldap 컨텍스트 소스의 기반을 동적으로 변경할 수 있는지 알아야합니까? 내 LDAP 콩으로

내가 코드에 주어진 동적으로 변화하는 매개 변수에 따라 다른 기지로 상황에 맞는 소스를 변경할 수있는 다음

<ldap:context-source 
    url="ldap://<url>" 
    base="dc=example,dc=local" 
    username="<user>@example.local" 
    password="<pass>" 
/> 

와 유선?

예를 들어 기본을 dc = example2로 변경하려면 dc = local로 변경하고 싶습니다.

프로그래밍 방식으로 LdapContextSource를 설정했다면 문제가되지 않습니다.

답변

2

이렇게 생각보다 간단하고 쉬웠습니다.

내가해야 할 일을했을 모든

는 가서

LdapContextSource ctxSrc = new LdapContextSource(); 
    ctxSrc.setUrl("ldap://<url>"); 
    ctxSrc.setBase("dc=example,dc=local"); 
    ctxSrc.setUserDn("<user>@example.local"); 
    ctxSrc.setPassword("<pass>"); 

ctxSrc.afterPropertiesSet(); // this method should be called. 

LdapTemplate tmpl = new LdapTemplate(ctxSrc); 
setLdapTemplate(tmpl); 

을 만들어 내 경우에는 동적 소스 인 특성에 내 LdapContextSource 값을 기반으로했다.

저는 봄에 할 일이 더 많다고 생각했습니다.