2015-04-08 128 views
0

我無法從oracle db web-app上下文遷移到postgresql db web-app上下文。org.apache.tomcat.dbcp.dbcp.SQLNestedException:無法加載JDBC驅動程序類'org.postgresql.Driver'

我有一個簡單的java spring-mvc web應用程序,用於啓動數據庫進程和休眠來管理對象。這個Web應用程序最初是想使用一個oracle數據庫,而我試圖使用postgresql基礎,但我對這個基礎很新,並且沒有用數據源的聲明來舒服。可能你會發現什麼是錯的。我在eclipse插件中使用tomcat apache服務器(v6)來調試我的web應用程序。

當我想我的服務器上運行我的網絡應用程序,服務器未能啓動與此日誌:

11:23:57.903 [main] INFO o.h.tool.hbm2ddl.SchemaUpdate - HHH000228: Running hbm2ddl schema update 
11:23:57.903 [main] INFO o.h.tool.hbm2ddl.SchemaUpdate - HHH000102: Fetching database metadata 
11:23:57.903 [main] ERROR o.h.tool.hbm2ddl.SchemaUpdate - HHH000319: Could not get database metadata 
org.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot load JDBC driver class 'org.postgresql.Driver' 
at org.apache.tomcat.dbcp.dbcp.BasicDataSource.createDataSource(BasicDataSource.java:1136) ~[tomcat-dbcp.jar:na] 
at org.apache.tomcat.dbcp.dbcp.BasicDataSource.getConnection(BasicDataSource.java:880) ~[tomcat-dbcp.jar:na] 
[...] 
Caused by: java.lang.UnsupportedClassVersionError: org/postgresql/Driver : Unsupported major.minor version 51.0 

我有驅動程序添加到我的pom.xml

<dependency> 
     <groupId>org.postgresql</groupId> 
     <artifactId>postgresql</artifactId> 
     <version>9.4-1200-jdbc41</version> 
    </dependency> 

,並取得了

mvn eclipse:eclipse 

我用我的META-INF目錄中聲明的數據源:

<Context> 
     <Resource name="jdbc/BlankAppDataSource" 
     auth="Container" 
     type="javax.sql.DataSource" 
     username="postgres" 
     password="postgres" 
     driverClassName="org.postgresql.Driver" 
     url="jdbc:postgresql://localhost:5432/my_schema" 
/> 

我甚至增加了驅動程序.jar到我的Tomcat的lib目錄(CATALINA_HOME/lib目錄)。

提前致謝。

Regards, Romain。

+1

驅動程序類名稱的屬性是'driverClassName'。 –

+0

好的,謝謝!但現在我得到org.apache.tomcat.dbcp.dbcp.SQLNestedException:無法加載JDBC驅動程序類'org.postgresql.Driver' – RVA

回答

2

我有同樣的問題,在我的情況下,我只是在「apache-tomcat-6.0.44/lib」文件夾中插入lib「postgresql-8.0-314jdbc3.jar」,它運行完美。

我在Tomcat服務器運行時環境中使用JDK 1.8.0_60。

0

「不支持的major.minor版本51.0」意味着maven已經下載了爲Java1.7編譯的類文件(請參閱ClassVersionChecker)。

現在升級Tomcat使用的JavaVM至少1.7! 你會發現這樣一行

catalina.startup.VersionLogger .. JVM版本:1.7.0_76-B13

在$ TOMCAT_HOME /日誌/ catalina.out的文件。

相關問題