应用程序开发者手册
application:应用程序
Context - In a nutshell, a Context is a web application。
简言之,Context就是一个web应用程序。
手册主要涵盖以下内容:应用Tomcat设置开发环境、组织源代码、build和test应用程序(application),这些是web应用程序开发的基本步骤。
手册不讨论web应用程序开发中的架构或推荐的编程经验等方面的内容,也不准备对讨论中涉及到的开发工具的使用操作提供更深入的说明。对附加资源的参考包含在下面的各小节中。
手册中的讨论,主要是针对那些使用文本编辑工具、加上命令行工具来开发、调试应用程序的开发人员的。如此,这也是一个最基本的建议,如果你正在使用一个IDE工具,那么建议你还是关注一下环境下的底层信息。当然在你使用基于Windows或Unix的开发环境时将更容易了。
http://java.sun.com/products/jsp/download.html
JSP(JavaServer Pages规范,Version 2.0
此规范说明了标准的JSP技术实现(web容器)应该提供的编程环境。JSP规范和Servlet API规范一起,描述一个可移植的API page中允许包含哪些内容。关于脚本、标签扩展、packaging JSP页等信息也是非常有用的。
http://java.sun.com/products/servlet/download.html
Servlet API规范,Version 2.4。
此规范说明了所有遵循此规范的servlet容器必须提供的编程环境信息。特别的,你很需要这个文档来理解web应用程序的目录结构、部署文件、映射请求URIs到servlets的方法、可安全管理的容器、及web应用程序部署描述器web.xml的语法等。
很多地方引用了$CATALINA_HOME,其表示Tomcat 安装的根目录,有几个关键的Tomcat 目录,都是对$CATALINA_HOME的相对路径:
●/bin - startup、shutdown及其他脚本目录。*.sh 文件(for Unix系统)功能上等效于 *.bat文件(for Windows系统)。由于Win32命令行缺少某些功能,故有一些额外的文件在这里。
●/conf - 配置文件及相关DTDs目录。最重要的文件是server.xml,这是容器的主要配置文件。
●/logs - 缺省的日志文件目录。
●/webapps - webapps 目录(web应用程序目录)。
===============================================================
Start - Start a web application which had been stopped.
Stop - Stop a web application which is currently running and make it unavailable.
Reload - Reload the web application so that new ".jar" files in /WEB-INF/lib/ or new classes in /WEB-INF/classes/ can be used.
Undeploy - Stop and then remove this web application from the server.
===============================================================
reload
NOTE:reload时,将不检查web 应用配置文件‘/WEB-INFO/web.xml’,而是直接使用之前的web.xml 配置文件。如果你对web.xml 作了修改,则必须stop web应用然后start 。
NOTE:部署在path/foo 下的WAR 不支持reload。目前,如果主机被设定为非unpack WAR 文件,则对应从WAR 文件直接安装的web 应用不支持应用重新加载(获取classes 或web.xml 文件的修改)。如果web 应用是从一个unpacked 目录安装的,如果使用的是一个WAR 文件,你应该undeploy、deploy 该应用的方式来重新加载更新。
undeploy
WARNING:此命令将删除所在虚拟主机的appBase目录(通常为“webapps”)内的web应用目录下的内容、和/或“.war”文件(如果存在)。
deploy
NOTE:web应用可以使用位于Tomcat服务器上的文件(s)或目录进行部署,或者你也可以上载一个web应用档案文件(WAR)到Tomcat服务器。
NOTE:想要安装一个应用,首先要根据不同的安装类型填写好合适的字段值,然后使用Install按钮进行提交。
NOTE:deploy命令部署并启动一个绑定到指定上下文路径(Context Path)上的新web应用(要求指定的上下文路径没有被其他web应用使用)。
通过URL部署一个目录或WAR
安装Tomcat服务器上的一个web应用目录或".war",如果没有指定上下文路径(Context Path),则目录名或war文件名(去掉".war"扩展名)被用做上下文路径。WAR或目录URL为一个目录或一个WAR文件指定了一个URL(包括file:sheme)。引用一个WAR文件的URL语法在Javadocs page for the java.net.JarURLConnection 类中被描述,只能使用对应(refer)整个WAR文件的URLs。
示例:
目录:部署web应用,上下文路径名:/footoo
Context Path: /footoo
WAR or Directory URL: file:C:/path/to/foo
WAR文件:部署web应用,上下文路径名:/bar
注:因为没有设置path参数,故上下文路径名缺省为web应用归档文件(WAR)的名字
WAR or Directory URL: jar:file:/path/to/bar.war!/
由主机的appBase部署一个目录或WAR
安装位于你的主机appBase目录下的一个web应用目录或".war",如果未指定上下文路径(Context Path),则目录明或war文件名被用作上下文路径。
示例:
目录:位于主机appBase/foo子目录下的web应用被部署,上下文路径名为:/foo
注:因为没有设置path参数,故上下文路径名缺省为web应用目录的名字
WAR or Directory URL: foo
WAR:位于主机appBase目录下的bar.war 文件被部署,上下文路径名为:/bartoo
Context Path: /bartoo
WAR or Directory URL: bar.war
使用一个上下文配置文件".xml"部署
如果Host deployXML 标志设置为true,你可以使用一个上下文配置文件".xml"和一个".war"文件或web应用目录安装/部署web应用。在使用上下文配置文件".xml"安装/部署web应用时不再使用上下文路径(Context Path)。
配置文件".xml"包括web应用上下文的有效XML信息,就像它在你的Tomcat配置文件"server.xml"中被配置的一样。
示例:
<Context path="/foobar" docBase="C:/path/to/application/foobar" debug="0">
<!-- Link to the user database we will get roles from -->
<ResourceLink name="users" global="UserDatabase" type="org.apache.catalina.UserDatabase"/>
</Context>
使用WAR或目录URL是可选的,如果显示的选择了一个web应用目录或".war"文件,将覆盖配置文件".xml"中的docBase。
示例:仅使用配置文件
XML Configuration file URL: file:C:/path/to/context.xml
示例:使用配置文件和".war"文件
XML Configuration file URL: file:/path/to/context.xml
WAR or Directory URL: jar:file:/path/to/bar.war!/
上载一个WAR文件并安装
从本机上载一个WAR文件并将其安装到主机的appBase下,WAR文件名(不带".war"扩展名)将被用于上下文路径名。
使用Browse 按钮选择一个WAR文件上载并安装。要求.WAR文件中必须包含一个上下文的XML配置文件(在/META-INFO/context.xml)来指定Tomcat专用的部署配置信息。
Notes:
如果主机设置‘unpackWARs=true’,则安装一个war文件时,文件内容将被unpacked到主机appBase目录下的一个子目录中。
如果应用war或目录部署在主机appBase目录,并主机设置为‘autoDeploy=true’或‘liveDeploy=true’,则web应用自动部署,此时上下文路径必须匹配目录名或war文件名。