2013-02-13 89 views
0

這個小問題,上午有問題:JTDS沒有合適的驅動程序行家Tomcat的運行

有添加依賴我pom這樣

.... 

    <dependency> 
    <groupId>net.sourceforge.jtds</groupId> 
    <artifactId>jtds</artifactId> 
    <version>1.2.6</version> 
    </dependency> 

...添加Maven依賴於我的war應用build path

my context.xml看起來像:

<?xml version='1.0' encoding='utf-8'?> 
<Context reloadable="true"> 
    <Resource name="jdbc/TestDS" auth="Container" 
     type="javax.sql.DataSource" 
     driverClass="net.sourceforge.jtds.jdbcx.JtdsDataSource" 
     url="jdbc:jtds:sqlserver://localhost:1433/testdb" 
     username="sa" password=""/>  
</Context> 

...

不過當我執行mvn tomcat:run。我得到這個

org.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot create JDBC driver of class '' 
for connect URL 'jdbc:jtds:sqlserver://localhost:1433/testdb' 
..... 
Caused by: java.sql.SQLException: No suitable driver 
    at java.sql.DriverManager.getDriver(DriverManager.java:264) 
    at  

org.apache.tomcat.dbcp.dbcp.BasicDataSource.createConnectionFactory(BasicDataSource.java:1437) 
    ... 36 more 

回答

1

如果使用JNDI,則驅動程序必須是"available to both Tomcat internal classes and to your web application"定義數據源。

因此,如果您只將驅動程序jar添加到您的戰爭中,Tomcat將無法找到驅動程序類。您可以add the jar to the plugin dependencies

+0

:) ..我只是開了所提供的鏈接,取而代之'driverClass'用'driverClassName'在我的'context.xml'和一切工作。 。謝謝你的鏈接:) ..你可以用這個評論編輯anwser,所以我可以標註 – 2013-02-13 13:54:18

+0

聽起來像是一個不同的問題。但是,如果沒有在Tomcat類路徑中可用的jar,它看起來很奇怪。 – 2013-02-13 14:01:11

+0

如果驅動程序在戰爭中可用,則更正它的工作方式。這通常不是一個好主意,因爲如果您在tomcat級別創建此資源,而不僅僅是您的Web應用程序,那麼您的jdbc驅動程序必須位於$ CATALINA_HOME/lib中。 – 2013-02-13 14:32:58

相關問題