2017-02-27 631 views
0

在使用jndi资源部署项目时遇到此错误。javax.naming.NameNotFoundException:在此上下文中未绑定名称[jdbc/skynetdb]。无法找到[jdbc]

javax.naming.NameNotFoundException:在此上下文中未绑定名称[jdbc/skynetdb]。无法找到[JDBC]

这里为“jdbc/skynetdb”是context.xml文件定义为JNDI资源的名称:

<Resource auth="Container" driverClassName="com.mysql.jdbc.Driver" 
     global="jdbc/skynetdb" maxActive="100" maxIdle="30" maxWait="10000" 
     name="jdbc/skynetdb" password="" type="javax.sql.DataSource" 
     url="jdbc:mysql://localhost:3306/skynetdb" username="root" /> 

和数据源中spring.xml文件豆被声明为:

<bean id="dataSource" class="org.springframework.jndi.JndiObjectFactoryBean"> 
     <property name="jndiName" value="jdbc/skynetdb" /> 
</bean> 

回答

0

问题解决了: 我只是在spring.xml文件修改数据源bean,如下所示:

<bean id="dataSource" class="org.springframework.jndi.JndiObjectFactoryBean"> 
     <property name="jndiName" value="java:comp/env/jdbc/skynetdb" /> 
</bean> 
相关问题