日期:2014-05-16  浏览次数:20528 次

tomcat配置数据库连接池成错误

在TOMCAT5.5.X的版本中配置数据源会出现这样的错误

org.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot create JDBC driver of class '' for connect URL 'null'


在Server.xml中设置如下

<Resource name="jdbc/cardsystem" type="javax.sql.DataSource" password="123456" driverClassName="com.mysql.jdbc.Driver" maxIdle="2" maxWait="5000" username="root" url="jdbc:mysql://localhost:3306/CardSystemDemo?autoReconnect=true&useUnicode=true&characterEncoding=GB2312" maxActive="100"/>


然后在WebApp的Context.xml中加入

<ResourceLink name="jdbc/cardsystem" global="jdbc/cardsystem" type="j

avax.sql.DataSource"/>

就一点问题都没有


还有,如果不配置server.xml的话

直接在Context.xml中加入

<Resource name="jdbc/cardsystem" type="javax.sql.DataSource" password="123456" driverClassName="com.mysql.jdbc.Driver" maxIdle="2" maxWait="5000" username="root" url="jdbc:mysql://localhost:3306/CardSystemDemo?autoReconnect=true&useUnicode=true&characterEncoding=GB2312" maxActive="100"/>

也是可以正常的运行


但是如果Context.xml中的是

<Resource auth="Container"

name="jdbc/cardsystem"

global="jdbc/cardsystem"

scope="Shareable"

type="javax.sql.DataSource"/>


<ResourceParams name="jdbc/cardsystem">


<parameter>

<name>factory</name>

<value>org.apache.commons.dbcp.BasicDataSourceFactory</value>

</parameter>


<parameter>

<name>url</name>

<value>jdbc:mysql://localhost:3306/CardSystemDemo?autoReconnect=true&useUnicode=true&characterEncoding=GB2312</value>

</parameter>


<parameter>

<name>driverClassName</name>

<value>com.mysql.jdbc.Driver</value>

</parameter>


<parameter>

<name>username</name>

<value>root</value>

</parameter>


<parameter>