|
基本上,将应用移植到Tomcat的最新版本6.0上并不需要做什么额外的工作,但是对于一些比较特殊的环境配置你需要确认以下几个方面:
首先是Java虚拟机的版本,Tomcat 6.0要求至少是5.0或者以上的版本。这点不象Tomcat 5.5可以使用兼容包使之工作在JRE 1.4下。
其次,Tomcat 6.0 修改了目录结构,废弃了原来的common目录,原来common/lib下的所有jar包现在统一到lib目录下,因此你需要将你原来放置在common/lib目录下的扩展jar包拷贝到lib目录下。
另外,Tomcat 6使用org.apache.juli.logging来替换原有的commons-logging,使日志的配置独立于容器之外。
还有一个是跟SSL相关的配置,在Connector配置时需要指定SSLEnabled参数为true才能启用SSL加密传输。
最后一个问题是跟集群有关的,Tomcat 6的集群配置已经做了重构,详细的配置信息请参考Tomcat 6的文挡。
在确认以上的问题不影响你的应用时,尽可以放心将应用放到Tomcat 6下去运行。
Enjoy it !
咱们在TOMCAT5.0时期在TOMCAT_HOMEconfCatalinalocalhost里的XXX.XML里是这样配置数据库路径的
<?xml version='1.0' encoding='utf-8'?>
<Context docBase="D:eclipseworkspaceBKGMS" path="/BKGMS" reloadable="true" workDir="D:eclipseworkspaceBKGMSworkorgapachejsp">
<Resource auth="Container" name="RedstoneSql" type="javax.sql.DataSource"/>
<ResourceParams name="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>
按某兄弟的写法 在 <Resource auth="Container" name="better" type="javax.sql.DataSource"/>之前加上 <ResourceLink global="better" name="better" type="javax.sql.DataSource"/>即可搞定
TOMCAT5.5和TOMCAT5.0配置不同
自Tomcat5.5以后,<context>元素的<Resoucepram>元素取消,原参数元素都以Resouce的属性出现.
而应该这样写,顺便把<ResourceLink >也加进去
<?xml version='1.0' encoding='utf-8'?>
<Context docBase="D:eclipseworkspaceBKGMS" path="/BKGMS" reloadable="true" workDir="D:eclipseworkspaceBKGMSworkorgapachejsp">
<Resource auth="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"/>
<ResourceLink global="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是我的数据库名。
报 unable to get connection :no suitable driver
是从eclipse中启动tomcat,发现启动时找不到org.apache.commons.dbcp.BasicDataSourceFactory,于是把Resouce元素中的factory="org.apache.commons.dbcp.BasicDataSourceFactory"删去,于是错误解决。
当然不要忘记在web.xml中加
<resource-ref>
<description>DB Connection</description>
<res-ref-name>better</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
<!--v:3.2-->
http://imgcache.qq.com/ac/b.gif |
|
|
|