我需要将LDAP contextSource放入我的Java EE容器的JNDI树中,以便容器内的应用程序可以使用它.
我正在使用Spring-LDAP对ORACLE OVD执行查询.对于开发,我只需在Spring xml配置文件中设置contextSource.但是,对于生产,我需要能够使用JNDI查找从容器中获取连接/上下文(如此处所示:http://forum.springframework.org/showthread.php?t = 35122&highlight = jndi ).我不允许访问生产OVD实例的URL/username/pwd,所以这似乎排除了将它放在jndi.properties文件中.
理想情况下,我想拥有一个连接池(就像JDBC一样),因为我的应用程序可能同时执行许多LDAP查询.从JNDI查找中抓取对象并将其注入到我的SimpleLdapTemplate中似乎非常简单,但我不知道如何将连接/上下文/池添加到JNDI树中.我需要构建它并将其打包成RAR吗?如果是这样,有哪些选项允许运营团队以开发人员无法访问的方式指定URL /用户名/密码?
我正在使用的特定容器是OAS/OC4J,但我也欢迎那些也适用于其他容器的策略.
特别是在引用LDAP连接的实际池时,如果您使用的是内置的JNDI LDAP提供程序,则已使用类似于JDBC数据源的语义池连接,其中为不同的LDAP URL和安全属性维护单独的池.
创建JNDI时DirContext
,将属性com.sun.jndi.ldap.connect.pool配置为true,并启用池化.
有对LDAP池的详细信息在这里.
有关配置LDAP池的详细信息,请参见此处.