【发布时间】:2011-09-26 21:28:24
【问题描述】:
这是我在 Spring 中第一次尝试使用 JNDI,但在尝试创建 ApplicationContext 时出现以下异常:
ApplicationContext context = new ClassPathXmlApplicationContext("master-job.xml");
Spring配置文件如下:
<bean id="dataSource" class="org.springframework.jndi.JndiObjectFactoryBean">
<property name="jndiName" value="/jdbc/Eqpstatus"/>
<property name="resourceRef" value="true" />
</bean>
<bean id="masterDao" class="com.dao.MasterDao">
<property name="dataSource" ref="dataSource"/>
</bean>
在服务器上,我有 JNDI 名称所需的资源条目。
<Resource auth="Container" driverClassName="oracle.jdbc.OracleDriver"
maxActive="10" maxIdle="2" maxWait="10000" name="jdbc/Eqpstatus"
password="xxxx" type="javax.sql.DataSource"
url="jdbc:oracle:thin:@(DESCRIPTION=(LOAD_BALANCE=on)(ADDRESS=(PROTOCOL=TCP)(HOST=xxxx) (PORT=1521))(ADDRESS=(PROTOCOL=TCP)(HOST=xxxx) (PORT=1521))(CONNECT_DATA=(SERVICE_NAME=xyz)))"
username="xxx"/>
我看到的错误是:
javax.naming.NameNotFoundException:名称 jdbc 未绑定在此上下文中非常感谢您作为 Spring-JNDI 集成的新手对此的任何意见。
【问题讨论】:
标签: oracle spring datasource tomcat6 jndi