我有一个AXIS2 Web服务,它使用Spring LDAP访问多个目录。它运行在Weblogic 10.3.6上。我正在尝试使用Spring Connection池来管理每个ContextSource的ldap连接。应用程序将部署,运行,返回ldap数据,但连接池不起作用。我让ldap人检查目录日志并验证没有池。我可以运行netstat -a | grep连接,我看到很多TIME_WAIT条目。我想知道罐子的组合是问题还是可能的配置问题,不允许池化生效。我验证了下面的所有jar都在构建,Weblogic java类路径和AXIS2 WEB-INF / lib目录中。任何解决这个问题的建议都是 赞赏。
Jar文件:
spring.jar(v2.5.6)
弹簧LDAP的核 - 2.0.2.RELEASE.jar
公共池-1.6.jar
Spring应用程序上下文文件:
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:ldap="http://www.springframework.org/schema/ldap"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/ldap
http://www.springframework.org/schema/ldap/spring-ldap.xsd">
<bean id="MyContextSource" class="org.springframework.ldap.pool.factory.PoolingContextSource">
<property name="contextSource" ref="ContextSourceTarget" />
<property name="dirContextValidator" ref="ContextValidator" />
<property name="testOnBorrow" value="true" />
<property name="testOnReturn" value="false" />
<property name="testWhileIdle" value="false" />
<property name="maxActive" value="5" />
<property name="maxTotal" value="5" />
<property name="maxIdle" value="1" />
<property name="minIdle" value="0" />
<property name="maxWait" value="5000" />
<property name="whenExhaustedAction" value="1" />
<property name="timeBetweenEvictionRunsMillis" value="-1" />
<property name="numTestsPerEvictionRun" value="3" />
<property name="minEvictableIdleTimeMillis" value="1800000" />
</bean>
<bean id="ContextValidator" class="org.springframework.ldap.pool.validation.DefaultDirContextValidator" >
</bean>
<bean id="ContextSourceTarget" class="org.springframework.ldap.core.support.LdapContextSource">
<property name="url" value="" />
<property name="userDn" value="" />
<property name="password" value="" />
<property name="pooled" value="false" />
</bean>
<bean id="LdapTemplate" class="org.springframework.ldap.core.LdapTemplate">
<constructor-arg ref="ContextSourceTarget" />
</bean>
<bean id="LdapDao" class="com.common.LdapDaoImpl">
<property name="ldapTemplate" ref="LdapTemplate" />
</bean>