zhuozuoying 发表于 2013-2-4 14:32:19

weblogic spring jndi配置

1在spring配置文件applicationContext.xml添加如下代码,注释掉原有JDBC数据源(如果有的话):
//连接本地weblogic JNDI数据源
<bean id="dataSource" class="org.springframework.jndi.JndiObjectFactoryBean">   <!--启动环境为weblogic下 -->    <property name="jndiName"><value>jdbc/cdcrip</value>    </property>   <!--启动环境为tomcat下 -->    <property name="jndiName"><value>java:comp/env/jdbc/cdcrip</value>    </property></bean>
2在spring配置远程JNDI时需要如下步骤:
jar:添加jrmpclient.jar否者会启动时会抛异常(不能找到相应的类)
rmi:启动报java.rmi.ConnectException: Connection refused to host:远程IP时需配置服务器端相应操作如下:
在linux上运行了hostname -i命令   
显示:127.0.0.1 (如果没有显示,则事先没有配置本地hostname)
于是vi /etc/hosts   
修改或新增为192.168.40.222   
另外在weblogic启动脚本上添加:   
-Djava.rmi.server.hostname=192.168.40.222

//连接调用远程weblogic JNDI数据源
<bean id="dataSource" class="org.springframework.jndi.JndiObjectFactoryBean">      <property name="jndiName"><value>jdbc/cdcrip</value>    </property><!--必须配置jndiEnvironment,否者spring无法找到JNDI连接数据源 -->    <property name="jndiEnvironment"><props><!-- The value of Context.PROVIDER_URL --><prop key="java.naming.provider.url">t3://远程IP:7001</prop><prop key="java.naming.factory.initial">weblogic.jndi.WLInitialContextFactory</prop><prop key="java.naming.security.principal">weblogic</prop>            <prop key="java.naming.security.credentials">weblogic</prop> </props>   </property></bean>
页: [1]
查看完整版本: weblogic spring jndi配置