使用數據庫數據源的web 項目,發佈後,訪問數據庫500報錯:java
瀏覽器端:mysql
控制檯:web
數據庫鏈接池在不啓動Tomcat的狀況下,測試類經過,沒有問題。sql
一旦在服務器發佈,就會出現問題,考慮是Tomcat的鏈接池配置除了問題。數據庫
錯誤提示是:找不到jdbc驅動,可是提示信息裏的class值爲null,因此,應該是Tomcat沒有找到驅動瀏覽器
一、檢查是否有jar包:存在,沒有問題。tomcat
二、檢查jar包位置:是在src 下。後來轉移到web下,仍是沒效果。網上資料說:在tomcat6.0中設置jdbc數據源時,jdbc驅動要放在TOMCAT_HOME/lib目錄下,毫不能放在web-inf/lib/下面:不然tomcat就會報錯說找不到驅動。eclipse中的webcontent是虛擬路徑。服務器
三、配置文件:缺失。oracle
解決方案:eclipse
增長了配置文件:
content.xml
1 <Context>
2 <Resource 3 auth="Container"
4 driverClassName="com.mysql.jdbc.Driver"
5 maxActive="100"
6 maxIdle="40"
7 maxWait="4000"
8 name="jdbc/fish"
9 username="root"
10 password="root"
11 type="javax.sql.DataSource"
12 url="jdbc:mysql://localhost:3306/fish?useUnicode=true&characterEncoding=UTF-8"
13 />
14 </Context>
運行成功。
轉載 關於Tomcat6 的數據源配置:
tomcat6.0 數據庫鏈接池配置問題:
鏈接池配好後,啓動tomat後,輸入項目系統的登陸名和密碼,報
Cannot create JDBC driver of class '' for connect URL 'null' 錯誤。
經檢查,發現是鏈接池沒有配好。
現把鏈接池配置步驟從新整理一遍。(以ORACLE爲例)
1.在tomcat的lib目錄下放入數據庫驅動。ORACLE的驅動爲ojdbc14.jar。
2.修改tomcat目錄下的conf目錄下的server.xml文件。
在<Host></Host>節點內,增長以下代碼
3.在tomcat目錄下的conf目錄下的Catalina目錄下的localhost目錄(若是你server.xml文件中HOST節點的name是localhost)下,增長testApp.xml文件。文件內容以下:
以上爲tomcat的配置完成,下面爲項目配置的修改。
4.修改項目目錄下的web.xml文件。增長jndi信息
5.修改hibernate.cfg.xml信息(若是使用了hibernate)
到此,tomcat6的鏈接池配置信息所有完成。
再登陸項目,上面的那個錯誤就再也不出現。