2014-11-08 2 views
0

비동기 저지 웹 서비스를 빌드하고 이제는 LDAP를 사용하여 일부 작업을 수행해야합니다. 나는이 모드에서 봄 beam.xml를 구성 있습니다Spring ldap pooling 오류

<bean id="contextSourceTarget" class="org.springframework.ldap.core.support.LdapContextSource"> 
     <property name="url" value="${ldap.url}" /> 
     <property name="base" value="${ldap.base}" /> 
     <property name="userDn" value="${ldap.userDn}" /> 
     <property name="password" value="${ldap.password}" /> 
     <property name="pooled" value="false" /> 
    </bean> 

    <bean id="contextSource" 
     class="org.springframework.ldap.pool.factory.PoolingContextSource"> 
     <property name="contextSource" ref="contextSourceTarget" /> 
    </bean> 

    <bean id="ldapTemplate" class="org.springframework.ldap.core.LdapTemplate"> 
     <constructor-arg ref="contextSource" /> 
    </bean> 

    <bean id="ldapTreeBuilder" class="com.me.ldap.LdapTreeBuilder"> 
     <constructor-arg ref="ldapTemplate" /> 
    </bean> 


    <bean id="personDao" class="com.me.ldap.PersonDaoImpl"> 
     <property name="ldapTemplate" ref="ldapTemplate" /> 
    </bean> 

을하지만 난 LDAP를 사용하려고하면이 오류가 : 난 평민이-pool2-2.2.jar이 내 프로젝트에서

Error creating bean with name 'contextSource' defined in class path resource [config/Beans.xml]: Instantiation of bean failed; nested exception is java.lang.NoClassDefFoundError: org/apache/commons/pool/KeyedPoolableObjectFactory 

을 LIB,하지만 여전히 난 ..이 error..i이 TOMCAT_PATH/lib 디렉토리가 아닌 작품 공유지 - pool2-2.2.jar 추가하려고해야

UPDATE :

나는 commons-pool-1.6.jar를 넣는다.하지만 pool2를 어떻게 사용하고 싶은가? 나는 단지 클래스 인 커먼즈 - pool2-2.2.jar를 변경해야합니까?

답변

1

불행히도 Spring-Ldap은 commons-pool을 사용하고 commons-pool2는 사용하지 않습니다. 클래스 org.apache.commons.pool.KeyedPoolableObjectFactory은 commons-pool2 (다른 패키지 구조)에 존재하지 않으므로 오류가 발생했습니다.

업그레이드하도록 요청 봄 - LDAP 프로젝트에 대한 락스 문제가있다/지원 평민 - pool2 : 그는 당신이 공유지 풀 1.6을 사용해야합니다 완료 될 때까지 https://jira.spring.io/browse/LDAP-316

.

+0

이제 commons-pool2가 지원됩니다. – Marged