来自:http://blog.csdn.net/chclvzxx/article/details/6780997
Web应用程序描述文件是Web应用程序的配置文件。
功能:
01) ServletContext的初始化参数
02) Servlet / JSP的定义
03) Servlet / JSP的映射
04) MIME类型定义
05) Session的配置
06) MIME类型的映射
07) 欢迎文件列表
08) 错误页面的设置
09) 安全相关设置
10) 地区和编码的设置
11) 利用JNDI取得资源
12) Tag Library的映射设定
=========================Writed by Jack.Hao on 2011.01.20========================
它由一个根元素<web-app></web-app>,它的内部元素结构如下:
<description>元素:
为父元素提供一个文本描述信息。有一个可选属性xml:lang
例:
-
<descriptionxml:lang=”zh”>在线网络书店</description>
<display-name>元素:
为这个元素指定一个简短的名字。有一个可选属性xml:lang
-
<display-namexml:lang=“en”>bookstore</display-name>
<icon>元素:
<small-icon>,<larger-icon>指定的大小图标,扩展名必须为 . gif或. jpeg,小图标的大小为16*16 pixel,大图标大小为32*32 pixel。在图形界面的开发工具中将用于表示父元素。
例:
-
<icon>
-
<small-icon>/images/small.gif</small-icon>
-
<large-icon>/images/large.gif</large-icon>
-
</icon>
<distributable>元素:
为空元素标签。指定是否可分布式处理,出现这个元素代表此Web工程已被设计能在多个Web容器间分散执行。用于指定这个Web应用程序是否可被布置到分布式的Web容器中。
<context-param>元素:
用于声明Servlet上下文的初始化参数。
<param-name>:指定叁数的名字
<param-value>:指定参数的值
在Serlvet中可通过如下方式获取这些参数信息:
-
Strings=getSerlvetContext().getInitParameter(“参数名”);
<filter>元素:
用于设置定一个过滤器。拦载过程发生在Web容器调用Serlvet其间。
Web容器在初始化时将这些信息封装到FilterConfig中,获得Filter实例对象时,Web容器通过调用Filter.init( )方法将这些信息传递给实例对象。
-
<filter>
-
<filter-name>ssi</filter-name>
-
<filter-class>org.apache.catalina.ssi.SSIFilter</filter-class>
-
<init-param>
-
<param-name>contentType</param-name>
-
<param-value>text/x-server-parsed-html(;.*)?</param-value>
-
</init-param>
-
</filter>
=========================Writed by Jack.Hao on 2011.01.20========================
<filter-mapping>元素:
用于设置过滤器负责过滤的URL指定的一类或者直接指定的Servlet。
<filter-name>
<url-pattern> 或 <servlet-name>
<dispatcher> REQUEST | INCLUDE | FORWARD | ERROR 指定Filter所拦截的Servlet容器调用资源的方式,默认为REQUEST,只对正常请求资源拦截。
例:
-
<filter-mapping>
-
<filter-name>AllJSP</filter-name>
-
<url-patter>/*.jsp</url-pattern>所拦截的请求路径。
-
</filter-mapping>
<listener>元素:
用于在Web应用程序设置监听器,实现用Web程序的监听。
<description>
<display-name>
<icon>
<listener-class>:指定的是监听器的完整路径。
例:
-
<listener>
-
<listener-class>org.apache.SessionListener</listener-class>
-
</listener>
<servlet>元素:
用于监听Web应用程序中的ServletContext,HttpSession和ServletRequest等域对象的属性的创建与销毁,及修改的事件。一个Web应用程序可注册多个Serlvet事件监听器,Web服务启动时,顺序加载Web.xml中的这些Serlvet监听器。
-
<description></description>
-
<display-name></display-name>
-
<icon></icon>
-
<servlet-name></servlet-name>
-
<servlet-class></servlet-class>或<jsp-file></jsp-file>
-
<init-param>
-
<description>
-
<param-name>
-
<param-value>
-
</init-param>
-
<load-on-startup></load-on-startup>
-
<run-as>
-
<description></description>
-
<role-name></role-name>
-
</run-as>
-
<security-role-ref>
-
<description></description>
-
<role-name></role-name>
-
<role-link></role-link>
-
</security-role-ref>
Web容器初始化应用程序时将这些信息存储在ServletConfig中,获得Serlvet实例时,Web容器能过Servlet.init( )将ServletConfig对象传递给Serlvet实例对象。
<jsp-file>元素:
指定Web应用程序中JSP文件的完整路径,以斜杠开头,用于对一个JSP文件做URL映射。
<jsp-file>/bookstore/BookList.jsp</jsp-file>
<load-on-startup>元素:
当Web应用程序启动时,此Serlvet被加载的顺序,值为一个整数,如果这个值为负数或零,表示在首次使用到时才被加载。正整数,值越小,表示越早被加载。
=========================Writed by Jack.Hao on 2011.01.20========================
<run-as>元素:
用于指定可以执行此Servlet的角色。<role-name>可有多项用于指定用于角色列表。
<security-role-ref>元素:
注意:<load-on-startup> , <run-as> , <role-link>只能出现0 次或一次。
<servlet-mapping>元素:
用于在Servlet和URL之间定义一种映射关系。
<servlet-name>:给出的servlet名字必须是<servlet>元素中声明过的serlvet名字。
<url-pattern>:该路径是相对于Web应用程序上下文的路径。
例:
-
<servlet-mapping>
-
<servlet-name>servlet.Login</servlet-name>
-
<url-pattern>/login</url-pattern>
-
</servlet-mapping>
<session-config>元素:
定义session的参数。定义这个Web站点所有session的有效期。为0表示永不过期,如web.xml没定义,则web容器必须设置HttpSession对象不活动存在的最长时间。
例:
-
<session-timeout>分钟<session-timeout>
-
<spanstyle="font-family:Arial;BACKGROUND-COLOR:#ffffff"></span>
<mime-mapping>元素:
在扩展名和MIME类型之间定义一个映射。
<extension> avi </extension> <!--指定扩展名-->
<mime-type> /x-msvideo </mime-type> <!--指定MIME类型-->
<welecom-file-list>元素:
设置欢迎页面列表。Servlet容器会按照配置的先后顺序调用页面,依次寻找。
-
<welcome-file>index.jsp</welcome-file>
-
<welcome-file>index.html</welcome-file>
<error-page>元素:
使用此功能需要打IE"工具"Internet取消"显示HTTP友好错误信息"
-
<error-code>404<error-code>或<error-type>java.io.IOException<error-type>
-
<location>/error.jsp</location>注意此处的路径必须以斜杠开头。
<jsp-config>元素:
为Web应用程序中的JSP文件提供全局的配置信息(对具有相同属性的多个页面进行统一定义)
例:
-
<taglib>
-
<taglib-uri>使用标签库的URI标识,JSP的taglib可以经这个URI存取到TLD文件。
-
<taglib-location>此标签库存放的位置
-
</taglib>
-
<jsp-property-group>
-
<description>
-
<display-name>
-
<url-pattern>
-
<el-ignored>
-
<scripting-invalid><!--true|false是否支持<%scripting%>表达式。
-
<page-encoding>
-
<include-prelude>
-
<include-coda>
-
<is-xml>
-
</jsp-property-group>
-
<jsp-config>
-
<taglib>
-
<taglib-uri>Taglib</taglib>
-
<taglib-location>/WEB-INF/tlds/MyTaglib.tld</taglib-location>
-
</taglib>
-
<jsp-property-group>
-
<description>JSPexample!</description>
-
<display-name>JSPConfig</display-name>
-
<url-pattern>/jsp/*</url-pattern>
-
<el-ignored>true</el–ignored>
-
<page-encoding>GB2312</page-encoding>
-
<scripting-invalid>true</script-invalid>
-
<include-prelude>/include/prelude.jspf</include-prelude>
-
<include-coda>/include/coda.jsp</include-coda>
-
</jsp-propertry-group>
-
</jsp-config>
=========================Writed by Jack.Hao on 2011.01.20========================
<security-constraint>元素:
声明受保护的Web资源及能够访问受保护资源所采用的协议。
<display-name>
<web-resource-collection> 至少一个或多个
<web-resource-name> 指令一个名称标识。资源名称。
<description>
<url-pattern>指定URL约束,受保护的URL路径
<http-method> 指定那些方法访问该资源时受保护。如没有指定则全部受保护。
<auth-constraint> 指定可以访问受保护资源的角色列表
<description>
<role-name> 指定角色名称。如果为*则表示所有角色均可访问。
<user-data-constraint> 指定客户端Web容器之间的通信数据应如何被保护。
<description>
<transport-guarantee>取值:NONE , INTEGRAL , CONFIDENTIAL其中NONE表示不加限制,即可使用所有通信协议。其它两种只能通过HTTPS协议访问受保护的资源。
<login-config>元素:
<auth-method> 配置WEB应用程序的验证机制。BASIC | DIGEST | FORM | CLIENT-CERT或是产品供应商指定的验证模式。
<realm-name>指定在HTTP基本验证中使用的领域的名称。
<form-login-config> 基于FORM验证的相关配置。
<form-login-page>
<form-error-page>
<security-role>元素:
定义一个安全角色。
<description>
<role-name>
<env-entry>元素:
声明Web应用程序的环境变量。
<env-entry-name>:指字部署组件的环境变量的名字。
<env-entry-type>:指定环境变量的值所属的Java类型的完整限定名
<env-entry-value>:为环境变量指定一个值。
<ejb-ref>元素:
声明对一个EJB的Home接口的引用。
<description>
<ejb-ref-name>:指定在部署组件的代码中使用的EJB引用的名字
<ejb-ref-type>元素:
指定引用的EJB类型
<home>:定义了引用EJB的Home接口的完整限定名
<remote>:定义了引用EJB的Remote接口的完整限定名
<ejb-link>:指定一个链接到EJB的引用
<ejb-local-ref>元素:
<description>
<ejb-ref-name>:指定在部署组件的代码中使用的EJB引用的名字。
<ejb-ref-type>:指定引用的EJB类型。
<local-home>:定义了引用EJB的Home接口的完整限定名。
<local>:定义了引用EJB的Remote接口的完整限定名。
<ejb-link>:指定一个链接到EJB的引用。
=========================Writed by Jack.Hao on 2011.01.20========================
<resource-ref>元素:
<description>
<res-ref-name>:指定所引用资源相对于java:comp/env上下JNDI名,该名字在部署文件中必须是唯一的。
<res-type>:所属数据类型,必须是Java类的完整限定名。
<res-auth>:Container和Application
<res-sharing-scope>:是否可以共享。 Shareable | Unshareable 默认为Shareable
例:
-
<resource-ref>
-
<description>JNDIJDBCofBookstore</description>
-
<rec-ref-name>jdbc/sample_db</rec-ref-name>
-
<res-type>javax.sql.DataSource</res-type>
-
<res-type>Application|Container</res-type>
-
</resource-ref>
<resource-env-ref>元素:
<description>
<resource-env-ref-name>:指定资源环境名字。对于java:comp/env上下JNDI名
<resource-env-ref-type>:指定资源环境引用的类型。
<local-encoding-mapping-list>元素:
指定语言环境和编码之间的映射关素。
<locale-encoding-mapping>
<locale>语言环境
<encoding>指定编码。
例:
-
<local-encoding-mapping>
-
<local>ja</local>
-
<encoding>shift_JIS</encoding>
-
</local-encoding-list>
分享到:
相关推荐
Tomcat web.xml文件,例子照着里面的配置就能配置自己的网站,放在WEB应用所在目录的WEB-INF目录下面
在工作中总结的Tomcat中web.xml,server.xml的详细配置文件的说明,...包含web.xml,server.xml配置文件中的所有配置,想详细了解web.xml,server.xml配置的朋友,还是很有帮助的。 在总结的过程中,查阅了大量的资料~~
tomcat配置文件web.xml与server.xml解析
http://download.csdn.net/source/3156743 web在线聊天室-补充
tomcat环境下web.xml文件配置说明
这是一篇电子档中的内容,对于使用Tomcat来部署Web项目的初学者来说,对web.xml的配置大多都不太熟悉,现在将该部分内容提取出来,给初学者参考,以免在部署项目时出现配置web.xml引发的问题而不知所措。文中的注释...
--small-icon元素应指向web站台中某个小图标的路径,大小为16 X 16 pixel,但是图象文件必须为GIF或JPEG格式,扩展名必须为:.gif或.jpg. --> 路径/small.gif <!--large-icon元素应指向web站台中某个大图表路径,大小...
tomcat的深度好文,详细深入的讲解了web.xml的各种配置。
server.xml是 Tomcat 中最重要的配置文件,server.xml的每一个元素都对应了 Tomcat 中的一个组件;通过对 XML 文件中元素的配置,可以实现对 Tomcat 中各个组件的控制。因此,学习server.xml文件的配置,对于了解和...
1、修改tomcat下的Conf/web.xml文件,在该文件内容中新增以下配置,注意,若该web.xml中存在其它filter,则需要将该filter放在所有filter前面; <filter-name>CorsFilter <filter-class>org.apache.catalina....
web应用程序通过Tomcat等容器启动时,会首先加载web.xml文件,通常我们工程中的各种配置文件,如日志、数据库、spring的文件等都在此时被加载,下面是两种常用的配置文件加载路径,即配置文件可以放到 SRC目录下或者...
pom.xml,springboot配置好的依赖。包含web ,web-services,junit,tomcat,mysql,thymeleaf等依赖
Tomcat简单的说就是一个运行JAVA的网络服务器,底层是...conf:配置文件 server.xml该文件用于配置server相关的信息,比如tomcat启动的端口号,配置主机(Host) web.xml文件配置与web应用(web应用相当于一个web站点)
Tomcat是由Apache软件基金会下属的Jakarta项目开发的一个Servlet容器,按照Sun Microsystems提供的技术规范,实现了对Servlet...Apache Tomcat 包含了一个配置管理工具,也可以通过编辑 XML 格式的配置文件来进行配置。
在conf文件夹下面找到server.xml 打开 在<hosts> ……中间添加一行 代码如下:”” docBase=”/usr/tomcat/apache-tomcat-8.5.11/webapps/guanwang” debug=”0″ reloadable=”true”/> docBase即为默认访问的...
tomcat配置自身错误页面,直接替换tomcat本身的root文件夹即可。然后修改web.xml,具体方式详见:https://blog.csdn.net/f552126367/article/details/107999676
解决办法:检查每个系统的web.xml配置文件,文件位置: Tomcat服务器下../webapps/项目名称/WEB-INF/web.xml。 【webAppRootKey】与其他项目下的配置值决不可相同!。 webAppRootKey:就好比身份证,不存在2个人用...
" "说明 " " "检测操作步"1、参考配置操作 " "骤 "修改tomcat/conf/tomcat-users.xml配置文件,删除与工作无 " " "关的帐号。 " " "例如tomcat1与运行、维护等工作无关,删除帐号: " " "<user username="tomcat1" ...
软件环境:Window server 2003+ IIS6.0 + Tomcat6.0 + JK2 ...tomcat的一些虚拟主机配置可以见配置文件server.xml 在访问过测试页后ISAPI筛选器"jakarta"会显示绿色箭头,红色是配置错误 不知道还有没有漏掉的 ^_^
Tomcat是由Apache软件基金会属下Jakarta项目开发的Servlet容器,按照Sun Microsystems提供的技术规范,实现了对Servlet和JavaServer ...Apache Tomcat包含了配置管理工具,也可以通过编辑XML格式的配置文件来进行配置。