Spring MVC web app找不到org.apache.commons.dbcp.BasicDataSource类

时间:2014-09-05 16:00:10

标签: java spring hibernate spring-mvc

我正在尝试使用Hibernate ORM设置Spring MVC Web应用程序。我正在使用JBOSS AS。

当我尝试定义数据源bean时出现问题:

<bean id="dataSource"
      class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close"
      p:driverClassName="${jdbc.driverClassName}"
      p:url="${jdbc.databaseurl}" p:username="${jdbc.username}"
      p:password="${jdbc.password}" />


<bean id="sessionFactory"
      class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
    <property name="dataSource" ref="dataSource" />
    <property name="configLocation">
        <value>classpath:hibernate.cfg.xml</value>
    </property>
    <property name="configurationClass">
        <value>org.hibernate.cfg.AnnotationConfiguration</value>
    </property>
    <property name="hibernateProperties">
        <props>
            <prop key="hibernate.dialect">${jdbc.dialect}</prop>
            <prop key="hibernate.show_sql">true</prop>
        </props>
    </property>
</bean>

当我运行应用程序并通过浏览器访问它时,它会抛出异常 -

org.springframework.beans.factory.CannotLoadBeanClassException: Cannot find class     [org.apache.commons.dbcp.BasicDataSource] for bean with name 'dataSource' defined in ServletContext     resource [/WEB-INF/servletCtx.xml]; nested exception is java.lang.ClassNotFoundException:     org.apache.commons.dbcp.BasicDataSource from [Module "deployment.untitled1.war:main" from Service     Module Loader]

我已经读过这个数据源方法已经过时并且已弃用的地方。这是真的吗?你还有什么建议?

感谢提示和帮助。

1 个答案:

答案 0 :(得分:0)

java.lang.ClassNotFoundException表示包含org.apache.commons.dbcp.BasicDataSource的必需JAR文件在类路径中不可用,只需添加它即可解决问题。

不使用JNDI连接将其配置为数据源。