﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>BlogJava-I love java-文章分类-tomcat</title><link>http://www.blogjava.net/baizhihui19870626/category/51627.html</link><description>记录本</description><language>zh-cn</language><lastBuildDate>Wed, 26 Sep 2012 00:16:59 GMT</lastBuildDate><pubDate>Wed, 26 Sep 2012 00:16:59 GMT</pubDate><ttl>60</ttl><item><title>web.xml作用 </title><link>http://www.blogjava.net/baizhihui19870626/articles/388072.html</link><dc:creator>小白19870626</dc:creator><author>小白19870626</author><pubDate>Wed, 19 Sep 2012 07:15:00 GMT</pubDate><guid>http://www.blogjava.net/baizhihui19870626/articles/388072.html</guid><wfw:comment>http://www.blogjava.net/baizhihui19870626/comments/388072.html</wfw:comment><comments>http://www.blogjava.net/baizhihui19870626/articles/388072.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/baizhihui19870626/comments/commentRss/388072.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/baizhihui19870626/services/trackbacks/388072.html</trackback:ping><description><![CDATA[<p>web工程中的web.xml文件有什么作用呢？它是每个web.xml工程都必须的吗？</p>
<p>一个web中完全可以没有web.xml文件，也就是说，web.xml文件并不是web工程必须的。</p>
<p><br />那什么时候需要，什么时候可以不需要呢？</p>
<p>要想回答上面的问题，得先了解web.xml文件使用来干什么的。web.xml文件是用来配置：欢迎页、servlet、filter等的。当你的web工程没用到这些时，你可以不用web.xml文件来配置你的web工程。</p>
<p>那么web.xml能做的所有事情都有那些？</p>
<p>其实，web.xml的模式(Schema)文件中定义了多少种标签元素，web.xml中就可以出现它的模式文件所定义的标签元素，它就能拥有定义出来的那些功能。web.xml的模式文件是由Sun公司定义的，每个web.xml文件的根元素&lt;web-app&gt;中，都必须标明这个web.xml使用的是哪个模式文件。如：<br />&lt;?xml version="1.0" encoding="UTF-8"?&gt;<br />&lt;web-app version="2.5" <br />xmlns="<a href="http://java.sun.com/xml/ns/javaee" rel="nofollow">http://java.sun.com/xml/ns/javaee</a>" <br />xmlns:xsi="<a href="http://www.w3.org/2001/XMLSchema-instance" rel="nofollow">http://www.w3.org/2001/XMLSchema-instance</a>" <br />xsi:schemaLocation="<a href="http://java.sun.com/xml/ns/javaee" rel="nofollow">http://java.sun.com/xml/ns/javaee</a> <br /><a href="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" rel="nofollow">http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd</a>"&gt;<br />&lt;/web-app&gt;</p>
<p>而且web.xml的模式文件中定义的标签并不是定死的，模式文件也是可以改变的，一般来说，随着web.mxl模式文件的版本升级，里面定义的功能会越来越复杂，也即标签元素的种类会越来越多，但有些是不常用的，我们只需记住一些常用的就可以了。</p>
<p><br />下面列出web.xml常用的标签元素及这些标签元素的功能：</p>
<p>1、指定欢迎页面，例如：<br />&lt;welcome-file-list&gt;<br />&lt;welcome-file-list&gt;<br />&lt;welcome-file&gt;index.jsp&lt;/welcome-file&gt;<br />&lt;welcome-file&gt;index1.jsp&lt;/welcome-file&gt;<br />&lt;/welcome-file-list&gt;<br />上面的例子指定了2个欢迎页面，显示时按顺序从第一个找起，如果第一个存在，就显示第一个，后面的不起作用。如果第一个不存在，就找第二个，以此类推。</p>
<p>关于欢迎页面：</p>
<p>访问一个网站时，默认看到的第一个页面就叫欢迎页，一般情况下是由首页来充当欢迎页的。一般情况下，我们会在web.xml中指定欢迎页。但web.xml并不是一个Web的必要文件，没有web.xml，网站仍然是可以正常工作的。只不过网站的功能复杂起来后，web.xml的确有非常大用处，所以，默认创建的动态web工程在WEB-INF文件夹下面都有一个web.xml文件。<br />对于tomcat来说，当你只指定一个web的根名，没有指定具体页面，去访问时一个web时， 如果web.xml文件中配置了欢迎页，那么就返回指定的那个页面作为欢迎页，而在文中没有web.xml文件，或虽然有web.xml，但web.xml也没指定欢迎页的情况下，它默认先查找index.html文件，如果找到了，就把index.html作为欢迎页还回给浏览器。如果没找到index.html，tomcat就去找index.jsp。找到index.jsp就把它作为欢迎页面返回。而如果index.html和index.jsp都没找到，又没有用web.xml文件指定欢迎页面，那此时tomcat就不知道该返回哪个文件了，它就显示The requested resource (/XXX) is not available的页面。其中XXX表示web的根名。但如果你指定了具体页面，是可以正常访问的。</p>
<p>2、命名与定制URL。我们可以为Servlet和JSP文件命名并定制URL,其中定制URL是依赖一命名的，命名必须在定制URL前。下面拿serlet来举例：<br />(1)、为Servlet命名：<br />&lt;servlet&gt;<br />&lt;servlet-name&gt;servlet1&lt;/servlet-name&gt;<br />&lt;servlet-class&gt;net.test.TestServlet&lt;/servlet-class&gt;<br />&lt;/servlet&gt;</p>
<p>(2)、为Servlet定制URL、<br />&lt;servlet-mapping&gt;<br />&lt;servlet-name&gt;servlet1&lt;/servlet-name&gt;<br />&lt;url-pattern&gt;*.do&lt;/url-pattern&gt;<br />&lt;/servlet-mapping&gt;</p>
<p><br />3、定制初始化参数：可以定制servlet、JSP、Context的初始化参数，然后可以再servlet、JSP、Context中获取这些参数值。下面哪servlet来举例：<br />&lt;servlet&gt;<br />&lt;servlet-name&gt;servlet1&lt;/servlet-name&gt;<br />&lt;servlet-class&gt;net.test.TestServlet&lt;/servlet-class&gt;<br />&lt;init-param&gt;<br />&lt;param-name&gt;userName&lt;/param-name&gt;<br />&lt;param-value&gt;Tommy&lt;/param-value&gt;<br />&lt;/init-param&gt;<br />&lt;init-param&gt;<br />&lt;param-name&gt;E-mail&lt;/param-name&gt;<br />&lt;param-value&gt;Tommy@163.com&lt;/param-value&gt;<br />&lt;/init-param&gt;<br />&lt;/servlet&gt;<br />经过上面的配置，在servlet中能够调用getServletConfig().getInitParameter("param1")获得参数名对应的值。</p>
<p>4、指定错误处理页面，可以通过&#8220;异常类型&#8221;或&#8220;错误码&#8221;来指定错误处理页面。<br />&lt;error-page&gt;<br />&lt;error-code&gt;404&lt;/error-code&gt;<br />&lt;location&gt;/error404.jsp&lt;/location&gt;<br />&lt;/error-page&gt;<br />-----------------------------<br />&lt;error-page&gt;<br />&lt;exception-type&gt;java.lang.Exception&lt;exception-type&gt;<br />&lt;location&gt;/exception.jsp&lt;location&gt;<br />&lt;/error-page&gt;</p>
<p>5、设置过滤器：比如设置一个编码过滤器，过滤所有资源<br />&lt;filter&gt;<br />&lt;filter-name&gt;XXXCharaSetFilter&lt;/filter-name&gt;<br />&lt;filter-class&gt;net.test.CharSetFilter&lt;/filter-class&gt;<br />&lt;/filter&gt;<br />&lt;filter-mapping&gt;<br />&lt;filter-name&gt;XXXCharaSetFilter&lt;/filter-name&gt;<br />&lt;url-pattern&gt;/*&lt;/url-pattern&gt;<br />&lt;/filter-mapping&gt;</p>
<p>6、设置监听器：<br />&lt;listener&gt;<br />&lt;listener-class&gt;net.test.XXXLisenet&lt;/listener-class&gt;<br />&lt;/listener&gt;</p>
<p>7、设置会话(Session)过期时间，其中时间以分钟为单位，假如设置60分钟超时：<br />&lt;session-config&gt;<br />&lt;session-timeout&gt;60&lt;/session-timeout&gt;<br />&lt;/session-config&gt;</p>
<p>除了这些标签元素之外，还可以往web.xml中添加那些标签元素呢，那些标签元素都能起什么作用呢？我们只要去查看web.xml的模式文件就能知道。直接看模式文件看不懂，可以找一些中文教程来看看。</p><img src ="http://www.blogjava.net/baizhihui19870626/aggbug/388072.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/baizhihui19870626/" target="_blank">小白19870626</a> 2012-09-19 15:15 <a href="http://www.blogjava.net/baizhihui19870626/articles/388072.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>apache的作用和tomcat的区别(转)</title><link>http://www.blogjava.net/baizhihui19870626/articles/386479.html</link><dc:creator>小白19870626</dc:creator><author>小白19870626</author><pubDate>Wed, 29 Aug 2012 01:22:00 GMT</pubDate><guid>http://www.blogjava.net/baizhihui19870626/articles/386479.html</guid><wfw:comment>http://www.blogjava.net/baizhihui19870626/comments/386479.html</wfw:comment><comments>http://www.blogjava.net/baizhihui19870626/articles/386479.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/baizhihui19870626/comments/commentRss/386479.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/baizhihui19870626/services/trackbacks/386479.html</trackback:ping><description><![CDATA[<p>经常在用apache和tomcat等这些服务器，可是总感觉还是不清楚他们之间有什么关系，在用tomcat的时候总出现apache，总感到迷惑，到底谁是主谁是次，因此特意在网上查询了一些这方面的资料，总结了一下：</p>
<p>&nbsp;</p><strong>一</strong> 
<p>apache支持静态页，tomcat支持动态的，比如servlet等，</p>
<p><br />一般使用apache+tomcat的话，apache只是作为一个转发，对jsp的处理是由tomcat来处理的。</p>
<p>apache可以支持php\cgi\perl,但是要使用java的话，你需要tomcat在apache后台支撑，将java请求由apache转发给tomcat处理。</p>
<p><strong>apache</strong>是web服务器<strong>,Tomcat</strong>是应用（java）服务器，它只是一个servlet(jsp也翻译成servlet)容器，可以认为是<strong>apache</strong>的扩展，但是可以独立于<strong>apache</strong>运行。</p>
<p>&nbsp;</p>
<p>这两个有以下几点可以比较的：<br />1、两者都是apache组织开发的<br />2、两者都有HTTP服务的功能<br />3、两者都是免费的<br /><br />不同点：<br />Apache是专门用了提供HTTP服务的，以及相关配置的（例如虚拟主机、URL转发等等）<br />Tomcat是Apache组织在符合J2EE的JSP、Servlet标准下开发的一个JSP服务器</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>二：</p>
<p>APACHE是一个web服务器环境程序 启用他可以作为web服务器使用 不过只支持静态网页 如(asp,php,cgi,jsp)等动态网页的就不行<br />如果要在APACHE环境下运行jsp 的话就需要一个解释器来执行jsp网页 而这个jsp解释器就是TOMCAT, 为什么还要JDK呢？因为jsp需要连接数据库的话 就要jdk来提供连接数据库的驱程，所以要运行jsp的web服务器平台就需要APACHE+TOMCAT+JDK</p>
<p>整合的好处是：<br />如果客户端请求的是静态页面，则只需要Apache服务器响应请求<br />如果客户端请求动态页面，则是Tomcat服务器响应请求<br />因为jsp是服务器端解释代码的，这样整合就可以减少Tomcat的服务开销</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p><strong>三：</strong></p>
<p>apache:侧重于http server <br />tomcat:侧重于servlet引擎，如果以standalone方式运行，功能上与apache等效 ， 支持JSP，但对静态网页不太理想； <br />apache是web服务器，tomcat是应用（java）服务器，它只是一个servlet(jsp也翻译成servlet)容器，可以认为是apache的扩展，但是可以独立于apache运行。 <br />换句话说，apache是一辆卡车，上面可以装一些东西如html等。但是不能装水，要装水必须要有容器（桶），而这个桶也可以不放在卡车上。</p><img src ="http://www.blogjava.net/baizhihui19870626/aggbug/386479.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/baizhihui19870626/" target="_blank">小白19870626</a> 2012-08-29 09:22 <a href="http://www.blogjava.net/baizhihui19870626/articles/386479.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>在tomcat中设置编码格式</title><link>http://www.blogjava.net/baizhihui19870626/articles/381160.html</link><dc:creator>小白19870626</dc:creator><author>小白19870626</author><pubDate>Wed, 20 Jun 2012 03:48:00 GMT</pubDate><guid>http://www.blogjava.net/baizhihui19870626/articles/381160.html</guid><wfw:comment>http://www.blogjava.net/baizhihui19870626/comments/381160.html</wfw:comment><comments>http://www.blogjava.net/baizhihui19870626/articles/381160.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/baizhihui19870626/comments/commentRss/381160.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/baizhihui19870626/services/trackbacks/381160.html</trackback:ping><description><![CDATA[<p>maxThreads="150" minSpareThreads="25" maxSpareThreads="75"<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; enableLookups="false" redirectPort="8443" acceptCount="100"<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; connectionTimeout="20000"&nbsp; useBodyEncodingForURI="true"<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; disableUploadTimeout="true" URIEncoding="utf-8" /&gt;</p>
<p>文章出处：飞诺网(<a href="http://www.diybl.com):http://www.diybl.com/course/3_program/java/javajs/20100719/456924.html">www.diybl.com):http://www.diybl.com/course/3_program/java/javajs/20100719/456924.html</a></p><img src ="http://www.blogjava.net/baizhihui19870626/aggbug/381160.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/baizhihui19870626/" target="_blank">小白19870626</a> 2012-06-20 11:48 <a href="http://www.blogjava.net/baizhihui19870626/articles/381160.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>linux 下tomcat 6.0.18 启动出现日志异常</title><link>http://www.blogjava.net/baizhihui19870626/articles/377530.html</link><dc:creator>小白19870626</dc:creator><author>小白19870626</author><pubDate>Mon, 07 May 2012 06:56:00 GMT</pubDate><guid>http://www.blogjava.net/baizhihui19870626/articles/377530.html</guid><wfw:comment>http://www.blogjava.net/baizhihui19870626/comments/377530.html</wfw:comment><comments>http://www.blogjava.net/baizhihui19870626/articles/377530.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/baizhihui19870626/comments/commentRss/377530.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/baizhihui19870626/services/trackbacks/377530.html</trackback:ping><description><![CDATA[<span class="Apple-style-span" style="color: #4b4b4b; font-family: verdana, Arial, helvetica, sans-seriff; font-size: 13px; line-height: 20px; background-color: #ffffff; "><p style="box-sizing: border-box; ">今天部署一个很简单的JSP程序，启动tomcat时出现下面的提示信息</p><p style="box-sizing: border-box; ">&nbsp;</p><p style="box-sizing: border-box; ">Using CATALINA_BASE:&nbsp;&nbsp; /software/apache-tomcat-6.0.18&nbsp;<br style="box-sizing: border-box; " />&nbsp;Using CATALINA_HOME:&nbsp; /software/apache-tomcat-6.0.18<br style="box-sizing: border-box; " />&nbsp;Using CATALINA_TMPDIR: /software/apache-tomcat-6.0.18/temp<br style="box-sizing: border-box; " />&nbsp;Using JRE_HOME:&nbsp; /usr</p><p style="box-sizing: border-box; ">用命令<br style="box-sizing: border-box; " />&nbsp;ps -ef|grep tomcat</p><p style="box-sizing: border-box; ">查看没有tomcat进程。</p><p style="box-sizing: border-box; ">查看tomcat日志信息，出现了下面的错误：</p><p style="box-sizing: border-box; "><br style="box-sizing: border-box; " />WARNING: error instantiating 'org.apache.juli.ClassLoaderLogManager' referenced by java.util.logging.manager, class not found<br style="box-sizing: border-box; " />java.lang.ClassNotFoundException: org.apache.juli.ClassLoaderLogManager not found<br style="box-sizing: border-box; " />&nbsp;&nbsp; &gt;&gt;No stacktrace available&amp;gt;&amp;gt;<br style="box-sizing: border-box; " />WARNING: error instantiating '1catalina.org.apache.juli.FileHandler,' referenced by handlers, class not found<br style="box-sizing: border-box; " />java.lang.ClassNotFoundException: 1catalina.org.apache.juli.FileHandler,<br style="box-sizing: border-box; " />&nbsp;&nbsp; &gt;&gt;No stacktrace available&amp;gt;&amp;gt;<br style="box-sizing: border-box; " />Exception during runtime initialization<br style="box-sizing: border-box; " />java.lang.ExceptionInInitializerError<br style="box-sizing: border-box; " />&nbsp;&nbsp; &gt;&gt;No stacktrace available&amp;gt;&amp;gt;<br style="box-sizing: border-box; " />Caused by: java.lang.NullPointerException<br style="box-sizing: border-box; " />&nbsp;&nbsp; &gt;&gt;No stacktrace available&amp;gt;&amp;gt;</p><p style="box-sizing: border-box; ">最终解决办法：<br style="box-sizing: border-box; " />用命令设置JAVA_HOME环境变量<br style="box-sizing: border-box; " />export JAVA_HOME=/software/jdk1.5.0_4/</p><p style="box-sizing: border-box; "><br style="box-sizing: border-box; " />进入 %tomcat%/bin/<br style="box-sizing: border-box; " />./startup.sh<br style="box-sizing: border-box; " />启动成功！</p></span><img src ="http://www.blogjava.net/baizhihui19870626/aggbug/377530.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/baizhihui19870626/" target="_blank">小白19870626</a> 2012-05-07 14:56 <a href="http://www.blogjava.net/baizhihui19870626/articles/377530.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>在Tomcat中部署Java Web应用程序 </title><link>http://www.blogjava.net/baizhihui19870626/articles/377513.html</link><dc:creator>小白19870626</dc:creator><author>小白19870626</author><pubDate>Mon, 07 May 2012 03:40:00 GMT</pubDate><guid>http://www.blogjava.net/baizhihui19870626/articles/377513.html</guid><wfw:comment>http://www.blogjava.net/baizhihui19870626/comments/377513.html</wfw:comment><comments>http://www.blogjava.net/baizhihui19870626/articles/377513.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/baizhihui19870626/comments/commentRss/377513.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/baizhihui19870626/services/trackbacks/377513.html</trackback:ping><description><![CDATA[<span class="Apple-style-span" style="font-family: Helvetica, Tahoma, Arial, sans-serif; line-height: 25px; background-color: #ffffff; ">转载链接：http://hi.baidu.com/kimmy_huang/blog/item/4aabbb275a7c9104908f9d09.html&nbsp;<br />在Tomcat中部署Java Web应用程序&nbsp;<br />2008-12-16 10:51&nbsp;<br />在Tomcat中部署Java Web应用程序有两种方式：静态部署和动态部署。在下文中$CATALINA_HOME指的是Tomcat根目录。&nbsp;<br />一、静态部署&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp; 静态部署指的是我们在服务器启动之前部署我们的程序，只有当服务器启动之后，我们的Web应用程序才能访问。以下3中方式都可以部署：&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp; 1、将PetWeb目录拷贝到$CATALINA_HOME\webapps下，然后启动服务器就可以了。这种方式比较简单，但是web应用程序必须在webapps目录下。访问地址如下：&nbsp;<br />http://localhost:8080/PetWeb/&nbsp;<br />&nbsp;&nbsp; 2、这种方式可以不必将PetWeb目录拷贝到webapps下，直接在F:\部署。方法如下，更改$CATALINA_HOME\conf\server.xml文件，在&lt;host&gt;标签内添加&lt;Context&gt;标签，内容如下：&nbsp;<br />&lt;Context docBase="F:/PetWeb" reloadable="false" path="/Pet"/&gt;&nbsp;<br />其中reloadable="false"表示当应用程序中的内容发生更改之后服务器不会自动加载，这个属性在开发阶段通常都设为true，方便开发，在发布阶段应该设置为false，提高应用程序的访问速度。docBase为路径，可以使用绝对路径，也可以使用相对路径，相对路径相对于webapps。path属性的值是访问时的根地址。访问地址如下：http://localhost:8080/Pet/&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp; 3、这种方式和第二种方式差不多，但是不是在Server.xml文件中添加Context标签，而是在$CATALINA_HOME\conf\Catalina\localhost中添加一个xml文件，如Pet.xml，内容如下：&nbsp;<br />&lt;Context docBase="F:/PetWeb" reloadable="false" /&gt;大家可能发现和第二种方式差不多，但是缺少了path属性，这种方式服务器会使用.xml的名字作为path属性的值。访问地址如下：http://localhost:8080/Pet/&nbsp;<br /><br />&nbsp;&nbsp;&nbsp;&nbsp; 我们刚才是将PetWeb文件夹部署在了服务器中，我们知道可以将Web应用程序的内容打成.war包，然后在部署在服务器上。打包请参考如下步骤：&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp; 1、打开命令提示符（Start--&gt;Run--&gt;cmd）&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp; 2、设置jdk环境变量（如果我教过的学生不会配置，以后别说孙老师教过你）&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp; 3、在命令提示符中进入F:\PetWeb文件后，键入如下命令：&nbsp;<br />jar ..\Pet.war *.*&nbsp; 这样在F:\下应该有Pet.war文件。其中..表示当前目录的父目录。&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp; 部署Pet.war文件非常简单，将刚才有docBase="F:\PetWeb"更改为docBase="F:\Pet.war"或者直接将其拷贝到 webapps下也可以。重新启动服务器就可以将Pet.war部署为一个Web应用程序了。如果你够细心的话你会发现，服务器将Pet.war文件解开，并且在webapps下面又生成了一个Pet文件夹，然后把Pet.war的内容拷贝到里面去了。我们可以通过以下方式取消自动解压缩，配置方式如下：&nbsp;<br />&lt;Context docBase="F:/PetWeb" reloadable="false" unpackWAR="false"/&gt;&nbsp;<br />二、动态部署&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp; 动态部署是指可以在服务器启动之后部署web应用程序，而不用重新启动服务器。动态部署要用到服务器提供的manager.war文件，如果在$CATALINA_HOME\webapps\下没有该文件，你必须去重新下载tomcat，否则不能完成以下的功能。要想使用该管理程序必须首先编辑$CATALINA_HOME\conf\tomcat-users.xml文件，内容如下：关于这个文件的更多内容，请参考Java Web应用程序的安全模型二&nbsp;<br />&lt;tomcat-users&gt;&nbsp;<br />&lt;role rolename="tomcat"/&gt;&nbsp;<br />&lt;role rolename="role1"/&gt;&nbsp;<br />&lt;role rolename="manager"/&gt;&nbsp;<br />&lt;user username="coresun" password="coresun" roles="manager"/&gt;&nbsp;<br />&lt;user username="tomcat" password="tomcat" roles="tomcat"/&gt;&nbsp;<br />&lt;user username="both" password="tomcat" roles="tomcat,role1"/&gt;&nbsp;<br />&lt;user username="role1" password="tomcat" roles="role1"/&gt;&nbsp;<br />&lt;/tomcat-users&gt;&nbsp;<br />然后在浏览器中键入如下地址：&nbsp;<br />http://localhost:8080/应该看到一个漂亮的加菲猫了吧。点击左边的Tomcat Manager链接，提示输入用户名和密码，本文都是coresun，然后可以看到以下页面：&nbsp;<br />在Context Path(option):中输入/Pet&nbsp;<br />XML Configration file URL中要指定一个.xml文件，比如我们在F:\下建立一个Pet.xml文件，内容如下：&nbsp;<br />&lt;Context reloadable="false" /&gt;docBase不用写了，因为在下一个文本框中填入。或者更简单点，这个文本框什么都不填。&nbsp;<br />在WAR or Directory URL:中键入F:\PetWet或者F:\Pet.war都可以，然后点击Deploy按钮，看看上面是不是已经看到了你web应用程序，名字就是你Context Path(option):中的名字。&nbsp;<br /><br />如果你部署.war文件还有更加简单的方式，下面还有个Select WAR file uploae点击浏览选择.war文件，然后点击Deploy也可以。</span><img src ="http://www.blogjava.net/baizhihui19870626/aggbug/377513.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/baizhihui19870626/" target="_blank">小白19870626</a> 2012-05-07 11:40 <a href="http://www.blogjava.net/baizhihui19870626/articles/377513.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>