您当前的位置: 首页 > 网站编程 > JSP教程 > tomcat5.0和tomcat5.5配置问题,二者是有区别的

tomcat5.0和tomcat5.5配置问题,二者是有区别的

作者:guanchaofeng 来源:不详 发布时间: 2009-05-22 20:58 点击:
每个项目都会在数据库上折腾一阵子,以前好搞定,因为都在TOMCAT5.0的基础上搞,不管是配ORCALESQLSERVER2000还是MYSQL搞了N长时间已经习惯了.但是重来没有奢望过用TOMCAT5.5弄这些,我所习惯的使用TOMCAT5.5仅仅在proxool.xml这种配置方式下使用.但是我一直相信

tomcat5.0和tomcat5.5配置问题,二者是有区别的

  每个项目都会在数据库上折腾一阵子,以前好搞定,因为都在TOMCAT5.0的基础上搞,不管是配ORCALESQLSERVER2000还是MYSQL搞了N长时间已经习惯了.但是重来没有奢望过用TOMCAT5.5弄这些,我所习惯的使用TOMCAT5.5仅仅在proxool.xml这种配置方式下使用.但是我一直相信TOMCAT5.5一定能在所有方式下使用.因为配置仅仅是种方式.
  
  昨天弄了一天,最后使用数据库时报了CannotcreateJDBCdriverofclass''forconnectURL'null'这样的错.以为和以前一样一定是哪个地方配置文件写错,结果查了半天没有半个单词写错
  
  上网查了查,原来好多兄弟和我一样都遇到过.按照某兄弟的写法试了下没有成功
  
  咱们在TOMCAT5.0时期在TOMCAT_HOME\conf\Catalina\localhost里的XXX.XML里是这样配置数据库路径的
  
  <?xmlversion='1.0'encoding='utf-8'?>
  
  <ContextdocBase="D:\eclipse\workspace\BKGMS"path="/BKGMS"reloadable="true"workDir="D:\eclipse\workspace\BKGMS\work\org\apache\jsp">
  
  <Resourceauth="Container"name="RedstoneSql"type="javax.sql.DataSource"/>
  
  <ResourceParamsname="better">
  
  <parameter>
  
  <name>factory</name>
  
  <value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
  
  </parameter>
  
  <parameter>
  
  <name>url</name>
  
  <value>jdbc:microsoft:sqlserver://127.0.0.1:1433;DatabaseName=bkgms</value>
  
  </parameter>
  
  <parameter>
  
  <name>password</name>
  
  <value>sa</value>
  
  </parameter>
  
  <parameter>
  
  <name>maxWait</name>
  
  <value>10000</value>
  
  </parameter>
  
  <parameter>
  
  <name>maxActive</name>
  
  <value>100</value>
  
  </parameter>
  
  <parameter>
  
  <name>driverClassName</name>
  
  <value>com.microsoft.jdbc.sqlserver.SQLServerDriver</value>
  
  </parameter>
  
  <parameter>
  
  <name>username</name>
  
  <value>sa</value>
  
  </parameter>
  
  <parameter>
  
  <name>maxIdle</name>
  
  <value>30</value>
  
  </parameter>
  
  </ResourceParams>
  
  </Context>
  
  按某兄弟的写法在<Resourceauth="Container"name="better"type="javax.sql.DataSource"/>之前加上<ResourceLinkglobal="better"name="better"type="javax.sql.DataSource"/>即可搞定
  
  但是重起TOMCAT后报unabletogetconnection:nosuitabledriver
  
  我靠,我想这是不灵的,再查.大多数兄弟都说了,TOMCAT5.5和TOMCAT5.0配置不同
  
  自Tomcat5.5以后,<context>元素的<Resoucepram>元素取消,原参数元素都以Resouce的属性出现.
  
  而应该这样写,顺便把<ResourceLink>也加进去
  
  <?xmlversion='1.0'encoding='utf-8'?>
  
  <ContextdocBase="D:\eclipse\workspace\BKGMS"path="/BKGMS"reloadable="true"workDir="D:\eclipse\workspace\BKGMS\work\org\apache\jsp">
  
  <Resourceauth="Container"name="better"type="javax.sql.DataSource"maxWait="10000"maxIdle="30"maxActive="100"username="sa"password="sa"driverClassName="com.microsoft.jdbc.sqlserver.SQLServerDriver"url="jdbc:microsoft:sqlserver://127.0.0.1:1433;DatabaseName=bkgms"/>
  
  <ResourceLinkglobal="better"name="better"type="javax.sql.DataSource"/>
  
  </Context>
  
  解释一下:1.path是指定访问该web应用的URL入口;
  
  2.docBase指定web应用的文件路径,可以是绝对路径,也可以是相对于Host的appBase属性的相对路径;
  
  3.type
  
  4.maxActive是DBCP中处于活动状态的数据库连接的最大数目,取0表示不受限制
  
  5.maxIdle是DBCP中处于空闲状态的数据库连接的最大数目,取0表示不受限制
  
  6.maxWait是是DBCP中的数据库连接处于空闲状态的最长时间(以毫秒为单位)取0表示无限期等待
  
  7.username是数据库登陆名
  
  8.password是数据库登陆口令
  
  9.driverClassName是只定数据库的jdbc驱动程序
  
  10.url是指定连接数据库的URL,testDBCP是我的数据库名。
  
  报unabletogetconnection:nosuitabledriver
  
  是从eclipse中启动tomcat,发现启动时找不到org.apache.commons.dbcp.BasicDataSourceFactory,于是把Resouce元素中的factory="org.apache.commons.dbcp.BasicDataSourceFactory"删去,于是错误解决。
  
  当然不要忘记在web.xml中加
  
  <resource-ref>
  
  <description>DBConnection</description>
  
  <res-ref-name>better</res-ref-name>
  
  <res-type>javax.sql.DataSource</res-type>
  
  <res-auth>Container</res-auth>
  
  </resource-ref>
  
  不过如果使用SQLSERVER2000也要确保打了SP4补丁

分享到:
本文"tomcat5.0和tomcat5.5配置问题,二者是有区别的"由远航站长收集整理而来,仅供大家学习与参考使用。更多网站制作教程尽在远航站长站。
顶一下
(0)
0%
踩一下
(0)
0%
[点击 次] [返回上一页] [打印]
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 密码: 验证码:
关于本站 - 联系我们 - 网站声明 - 友情连接- 网站地图 - 站点地图 - 返回顶部
Copyright © 2007-2013 www.yhzhan.com(远航站长). All Rights Reserved .
远航站长:为中小站长提供最佳的学习与交流平台,提供网页制作与网站编程等各类网站制作教程.
官方QQ:445490277 网站群:26680406 网站备案号:豫ICP备07500620号-4