找不到类[oracle.jdbc.OracleDriver]

时间:2015-01-14 07:06:25

标签: java oracle jpa jdbc vaadin

我尝试测试Vaadin JPAContainer演示'jpacontainer-addressbook-demo'以连接到oracle。但我遇到了异常。

com.vaadin.server.ServiceException: javax.persistence.PersistenceException: Exception [EclipseLink-4003] (Eclipse Persistence Services - 2.2.0.v20110202-r8913): org.eclipse.persistence.exceptions.DatabaseException
Exception Description: Configuration error.  Class [oracle.jdbc.OracleDriver] not found.

我的persistence.xml

<persistence-unit name="oracle">
    <provider>org.eclipse.persistence.jpa.PersistenceProvider</provider>
    <exclude-unlisted-classes>false</exclude-unlisted-classes>
    <properties>
        <property name="javax.persistence.jdbc.url" value="jdbc:oracle:thin:@localhost:1521:orcl"/>
        <property name="javax.persistence.jdbc.user" value="xxx"/>
        <property name="javax.persistence.jdbc.password" value="xxx"/>
        <property name="javax.persistence.jdbc.driver" value="oracle.jdbc.OracleDriver"/>
    </properties>
</persistence-unit>

我已将ojdbc6.jar放到WEB-INF / lib中。我找到了jpacontainer-addressbook-demo-3.2.0.war的WEB-INF \ lib \中的ojdbc6.jar。我不明白为什么它有这个例外。任何提示都会非常感激。

我按照此页面找到了解决方案。 http://www.mkyong.com/maven/how-to-add-oracle-jdbc-driver-in-your-maven-local-repository/

但我不知道为什么不能直接将jar文件放到lib文件夹中。任何人都可以帮忙解释一下吗?感谢。

2 个答案:

答案 0 :(得分:0)

由于配置错误,配置提示未加载驱动程序。 您可能需要更改数据库网址,具体取决于您的应用服务器。

我们使用Wildfly和Weblogic,URL在服务器和数据库名称之间使用斜杠: JDBC:预言:瘦:@localhost:1521 / ORCL

根据OTN上的帖子,Glassfish会再次出现不同: JDBC:预言:瘦://本地主机:1521:ORCL

答案 1 :(得分:0)

我希望这可以帮到你

如果您正在使用Eclipse,那么您可以通过选择项目,右键单击,属性,Java构建路径,然后在库选项卡上添加JAR,将此JAR包含在构建路径中。