【发布时间】:2014-04-09 19:34:52
【问题描述】:
我正在使用 Spring MVC JNDI,但出现此异常:
异常 javax.naming.NameNotFoundException:名称 jdbc 未绑定在此上下文中
我不知道如何解决这个问题。这是我的代码:
applicationContext.xml
<bean id="sessionFactory" class="org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean">
<property name="dbDataSource" ref="dbDataSource" />
</beans>
<bean id="dbDataSource" class="org.springframework.jndi.JndiObjectFactoryBean">
<property name="jndiName" value="java:comp/env/jdbc/practice"/>
<property name="lookupOnStartup" value="true"></property>
</bean>
类
public class EmpDAOImpl implements EmpDAO {
@Autowired
private SessionFactory sessionfactory;
@Autowired
@Qualifier("dbDataSource")
private DataSource dataSource;
}
web.xml
<web-app >
<resource-ref>
<description>MySQL Datasource example</description>
<res-ref-name>java:comp/env/jdbc/practice</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
</web-app>
【问题讨论】: