在Spring3.0中配置一个JNDI JNDI命名树上上挂一个EJB对象
Weblogic JNDI配置
<bean id="queryJndiTemplate" class="org.springframework.jndi.JndiTemplate">
<property name="environment">
<props>
<prop key="java.naming.provider.url">${query.eai.inf.etax.ejb.provider.url}</prop>
<prop key="java.naming.factory.initial">weblogic.jndi.WLInitialContextFactory</prop>
<prop key="java.naming.security.principal">${query.eai.inf.etax.ejb.provider.principal}</prop>
<prop key="java.naming.security.credentials">${query.eai.inf.etax.ejb.provider.security}</prop>
</props>
</property>
</bean>
Spring在启动时,是否加载这个对象。
<bean id="queryJndiTarget" class="org.springframework.jndi.JndiObjectTargetSource">
<property name="jndiName">
<value>${query.eai.inf.etax.base.ejb.provider.jndi_name}</value>
</property>
<property name="jndiTemplate">
<ref local="queryJndiTemplate" />
</property>
<property name="lookupOnStartup">
<value>false</value>
</property>
<property name="cache">
<value>false</value>
</property>
</bean>
lookupOnStartup属性是用于判断是否在Spring启动时连接WebLogic的JNDI接口
在application.properties文件中配置查询接口的JNDI参数
#querydata
query.eai.inf.etax.ejb.provider.url=t3://10.6.10.237:7001
query.eai.inf.etax.ejb.provider.principal=system
query.eai.inf.etax.ejb.provider.security=security
query.eai.inf.etax.base.ejb.provider.jndi_name=dc.ejb.eai.eaiprocessor