java.sql.SQLException:通过spring roo运行测试时没有合适的驱动程序

Eri*_*ric 3 oracle spring hibernate

我正在尝试传递由roo为实体类自动生成的测试.当我对hsql运行测试时,它们都通过了.但是当我对Oracle运行测试时,我得到以下结果:

引起:org.apache.commons.dbcp.SQLNestedException:无法为连接URL'jdbc:localhost:1521:xe'创建类'oracle.jdbc.driver.OracleDriver'的JDBC驱动程序

我有一个oracle db local,我知道连接有效.

ojdbc14.jar文件位于JBoss 4.2.3/server/all目录的lib目录中(我们正在部署到的目录)

这是数据源bean和实体管理器工厂定义

<bean class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close" id="dataSource">
    <property name="driverClassName" value="${database.driverClassName}"/>
    <property name="url" value="${database.url}"/>
    <property name="username" value="${database.username}"/>
    <property name="password" value="${database.password}"/>
    <property name="testOnBorrow" value="true"/>
    <property name="testOnReturn" value="true"/>
    <property name="testWhileIdle" value="true"/>
    <property name="timeBetweenEvictionRunsMillis" value="1800000"/>
    <property name="numTestsPerEvictionRun" value="3"/>
    <property name="minEvictableIdleTimeMillis" value="1800000"/>
</bean><!--  Development specific configuration comes here.  -->

<bean class="org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean" id="entityManagerFactory">
    <property name="persistenceUnitName" value="${hibernate.persistenceunit}"/>
    <property name="dataSource" ref="dataSource"/>
</bean>
Run Code Online (Sandbox Code Playgroud)

这是pom依赖关系定义:

    <dependency>
        <groupId>com.oracle</groupId>
        <artifactId>ojdbc14</artifactId>
        <version>10.2.0.3.0</version>
        <classifier/>
    </dependency>
Run Code Online (Sandbox Code Playgroud)

persistenceunit变量解析为persistenceUnitDev

这是持久性单元org.hibernate.ejb.HibernatePersistence的hibernate定义

最后我的属性文件定义了数据连接:

database.password=password
database.url=jdbc\:localhost\:1521\:xe
database.username=username
database.driverClassName=oracle.jdbc.driver.OracleDriver
Run Code Online (Sandbox Code Playgroud)

我无法弄清楚为什么它告诉我它无法获得合适的驱动程序.

提前致谢

Hen*_*ing 5

您的网址没有正确的模式.试试吧jdbc:oracle:thin:@localhost:1521:xe.