Tomcat升級記

原文网址如下:http://amieeyang.spaces.live.com/blog/
 
今天上午與時俱進的升級了一下tomcat,將原來的5.0升級為了6.0.16版
首先的安裝過程就不順利,總是提醒我,

Failed to install Tomcat6 service

check your settings and permissions

 Ignore and continue anyway

開始以為會是因為防毒軟件的關係,就把他們都關掉了,但是依然如此,
忽略后安裝完成時,服務是啟動不了的,Orz
搜尋了一下錯誤原因,從網上找到說,可能是因為之前安裝有Tomcat5.x版的緣故,
需要卸載掉原有版本后,才能后重新安裝。
照做,一切順利了...
之前只是耳聞,datasource的部分不是很一樣
但一開始,還是想試試看,結果就將原來的server.xml中的Context內容先copy過去嘗試,果真不行
啟動后會出現諸如此類的警告信息,server無法啟動:
2008-4-1512:52:32 org.apache.tomcat.util.digester.SetPropertiesRule begin
警告: [SetPropertiesRule]{Server/Service/Engine/Host/Context} Setting property 'debug' to '5' did not find a matching property.
2008-4-15 12:52:32 org.apache.tomcat.util.digester.Digester endElement
警告:   No rules found matching 'Server/Service/Engine/Host/Context/ResourceParams/parameter/name'.
2008-4-15 12:52:32 org.apache.tomcat.util.digester.Digester endElement
警告:   No rules found matching 'Server/Service/Engine/Host/Context/ResourceParams/parameter/value'.
2008-4-15 12:52:32 org.apache.tomcat.util.digester.Digester endElement
警告:   No rules found matching 'Server/Service/Engine/Host/Context/ResourceParams/parameter'.
...
無奈只能查找和Tomcat6的Context有關的內容,
發現一位網友desert寫的 Tomcat 6多应用的Context配置還是很有借鑒價值的
轉述一下:
这几天一直在看tomcat 6的有关内容,在其文档中看到tomcat 5,6关于context的配置不同于tomcat 4,不推荐在server.xml中进行配置,在context.xml文件中进行配置才是更好的方法。回想以前所有的项目都是在server.xml中配置context的,每次部署一个新的应用或者修改context内容都要重新启动tomcat,导致应用总是要中断服务一小段时间,比较不方便,而且多个context都在server.xml中,显得有些杂乱。于是决定使用在context.xml中进行配置应用的方式。在tomcat_home/ conf目录下有一个context..xml文件,修改其中内容之后,tomcat 能够自动reload所有的应用。
我的应用是在 tomcat_home/webapps下部署了多个应用,这多个应用的context配置是不同的。于是我把原来server.xml有关 context的部分(多个)复制出来,粘贴到context.xml中,保存之后,启动tomcat ,发现启动的时候出错,看来tomcat是不支持在一个context.xml中配置多个不同应用的。上网上google有关在context.xml中配置多个应用的方法,遗憾的是,始终无法找到。后来仔细阅读tomcat 文档,终于找到了解决方法,在应用下面的META-INF文件夹下建立context.xml文件就可以满足应用的定制需求。具体路径就是: tomcat_home/webapps/yourApp/META-INF/context.xml,这样每个应用都可以拥有各自的配置,修改了该文件中的内容,tomcat可以自动重新装载该应用,非常的方便。下面是一个可以自动重新装载servlet和javabean(方便debug),带有数据库连接池(以Oracle为例)的context.xml文件内容:
<?xml version="1.0" encoding="UTF-8"?>
<Context reloadable="true" crossContext="true">
 <!-- Default set of monitored resources -->
 <WatchedResource>WEB-INF/web.xml</WatchedResource>
 <!-- Uncomment this to disable session persistence across Tomcat restarts -->
 <!--
  <Manager pathname="" />
 -->
 <Resource name="jdbc/myoracle" auth="Container"
              type="javax.sql.DataSource"
     driverClassName="oracle.jdbc.OracleDriver"
              url="jdbc:oracle:thin:@127.0.0.1:1521:mysid"
              username="scott"
     password="tiger"
     maxActive="20"
     maxIdle="10"
              maxWait="-1"/>
 <Logger className="org.apache.catalina.logger.FileLogger"
  prefix="localhost_DBTest_log." suffix=".txt" timestamp="true" />
 <Valve className="org.apache.catalina.valves.AccessLogValve"
  prefix="localhost_access_log." suffix=".txt" pattern="common" />
</Context>
閱讀后發現,我們之前也果然是將很多的Context配置在同一個server.xml
隨即照此方法去嘗試,果然好了很多,那些警告不在出現了...
但是,卻提示

”Cannot load JDBC driver class 'oracle.jdbc.OracleDriver' 等“,顯然沒有找到driver 啦

遂將有關驅動的jar copy到//Tomcat 6.0/lib目錄下面。

再試,終於ok了,^^

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值