Tomcat配置数据源(异常:Cannot create JDBC driver of class '' for connect URL )

在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> <name>password</name> <value>123456</value> </parameter>

<parameter> <name>maxWait</name> <value>3000</value> </parameter>

<parameter> <name>maxIdle</name> <value>100</value> </parameter>

<parameter> <name>maxActive</name> <value>10</value> </parameter> </ResourceParams> 的话,就是有问题!!!!!!!!

 

---------------------------------------------------------------------------------------------------------------------------------------------------

我就是这样做了,但是还是有问题,不得其解!!!现在的解决办法只有如下才行得通: 在$CATALINA_HOME/conf/Catalina/localhost下建一个与自己应用同名的xml配置文件,如工程名是kwxtest,那么就建一个kwxtest.xml,内容如下: <?xml version="1.0" encoding="UTF-8"?> <Context privileged="true" docBase="D:/apache-tomcat-5.5.17/webapps/kwxtest"> <ResourceLink global="jdbc/hibernatetest" name="jdbc/hibernatetest" type="javax.sql.DataSourcer"/> </Context> 然后,确保/conf/server.xml文件内容类似如下: <?xml version="1.0" encoding="UTF-8"?> <Server> <Listener className="org.apache.catalina.core.AprLifecycleListener"/> <Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener"/> <Listener className="org.apache.catalina.storeconfig.StoreConfigLifecycleListener"/> <Listener className="org.apache.catalina.mbeans.ServerLifecycleListener"/> <GlobalNamingResources> <Environment value="30" type="java.lang.Integer" name="simpleValue"/> <Resource type="org.apache.catalina.UserDatabase" description="User database that can be updated and saved" auth="Container" name="UserDatabase" pathname="conf/tomcat-users.xml" factory="org.apache.catalina.users.MemoryUserDatabaseFactory"/> <Resource type="javax.sql.DataSource" name="jdbc/hibernatetest" driverClassName="com.mysql.jdbc.Driver" password="root" maxIdle="2" maxWait="5000" username="root" url="jdbc:mysql://localhost:3306/hibernatetest?useUnicode=true" maxActive="4"/> </GlobalNamingResources> <Service name="Catalina"> <Connector port="8080" redirectPort="8443" minSpareThreads="25" connectionTimeout="20000" maxSpareThreads="75" maxThreads="150"> </Connector> <Connector port="8009" redirectPort="8443" protocol="AJP/1.3"> </Connector> <Engine defaultHost="localhost" name="Catalina"> <Realm className="org.apache.catalina.realm.UserDatabaseRealm"/> <Host appBase="webapps" name="localhost"> </Host> </Engine> </Service> </Server> 最后,确保你的应用的web.xml中,在</web-app>前加了如下配置信息: <resource-ref> <descrtiption>DB Connection</descrtiption> <res-ref-name>jdbc/hibernatetest</res-ref-name> <res-type>javax.sql.DataSource</res-type> <res-auth>Container</res-auth><!--Container-容器管理 Application-Web应用管理--> </resource-ref>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值