用web.xml控制Web应用的行为

来源:互联网 发布:上海linux招聘 编辑:程序博客网 时间:2024/05/20 11:49

web.xml控制Web应用的行为

 

 

一、定义头和根元素

部署描述符文件就像所有XML文件一样,必须以一个xml头开始。这个头声明可以使用的xml版本并给出文件的字符编码。

DOCTYPE生们必须立即出现在此头之后。这个声明告诉服务器使用的servlet规范的版本并制定管理此文件其余部分内容的语法的dtdDocument Type Definition,文档类型定义)。

所有部署描述符文件的顶层元素为web-app。请注意,xml元素不像html元素,它们是大小写敏感的。因此,web-AppWEB-APP多是不合法的。Web-app必须用小写。

<?xmlversion="1.0" encoding="ISO-8859-1"?>

 

<!DOCTYPEweb-app

    PUBLIC "-//Sun Microsystems, Inc.//DTDWeb Application 2.3//EN"

   "http://java.sun.com/dtd/web-app_2_3.dtd">

 

<web-app>

……

……

……

</web-app>

二、部署描述符文件内的元素次序

       xml元素不仅是大小写敏感的,而且它们还对出现的先后次序敏感,例如,xml头必须是文件中的第一项,DOCTYPE声明必须是第二项,而web-app元素必须是第三项。在web-app元素内,元素的次序也很重要。服务器不一定强制要求这种次序,但他们允许完全拒绝执行含有次序不正确的元素的web应用,这表示使用非标准元素次序的web.xml文件是不可移植的。

下面的列表给出了所有可直接出现在web-app元素内的合法元素所必须的次序。例如,此列表说明servlet元素必须出现在所有servlet-mapping元素之前。如果有任意的mime-mapping元素,它们必须出现在所有servletservlet-mapping元素之后是welcome-file-list之前。请注意,所有这些元素都是科学的,因系,可以省略某一元素,但不能把它放一不正确的位置。

1、      icon   icon元素指出IDEGUI工具来表示web应用的一个或两个图像文件的位置。

2、      display-name   display-name元素提供GUI工具可能会用来标记这个特听得web应用的一个名称。

3、      description     description 元素给出鱼刺web应用有关的说明性文本。

4、      distributable    distributable越俗告诉系统,在多个服务器上分布此web应用是安全的。

5、      context-param        context-param元素声明应用范围内的初始化参数。

6、      filter        过滤器元素将一个名字与一个实现javax,servlet.filter接口的类相关联。

7、      filter-mapping        一旦命名了一个过滤器,就要利用filter-mapping元素把它一个或多个servletjsp页面相关联。

8、      listener           servlet API的版本增加了对事件监听程序的支持,事件监听程序在建立、修改或删除会话或servlet环境是得到通知。Listener元素指出事件监听程序类。

9、      servlet            在向servletjsp页面制定出使化参数或定制url时,必须首先命名servletjsp页面。Servlet元素就是用来完成此项任务的。

10、      servlet-mapping             服务器一般为servlet提供一个缺省的url:         http://localhost/webAppPrefix/servlet/servletName。但是,常常会更改这个url,以便servlet可以访问初始化参数或更容易地处理相对URL.。在更改缺省URL时,使用servlet-mapping元素。

11、      session-config        如果某个会话在一定时间内未访问,服务器可以抛弃他以节省内存。可通过使用httpSessionsetMaxInactiveInterval方法明确设置单个会话对象的超时值,或者可利用session-config元素制定缺省超时值。

12、      mime-mapping       如果web应用具有相当特殊的文件,希望能保证给他们分配特定的mime类型,则mime-mapping元素提供这种保证。

13、      welcome-file-list            welcome-file-list元素只是服务器在收到引用一个目录而不是文件名的URL时,使用哪个文件。

14、      error-page             error-page元素是得再返回特定http状态代码时,或者特定类型的一场被抛出时,能够制定将要现实的页面。

16、      taglib       taglib元素对标签库描述符文件(tag library descriptor file)指定别名。此功能使你能够更改tld文件的位置而不用编辑使用这些文件的jsp页面。

17、      resource-env-ref    此元素声明鱼刺元相关的一个管理对象。

18、      resource-ref           声明一个资源工厂使用的外部资源。

19、      security-constratint       指定应该保护的URL。他与login-config元素联合使用。

20、      login-config    指定服务器应该给试图访问受保护页面的用户授权。

21、      security-role          此元素给出一个安全角色的一个列表,这些角色将出现在sevlet元素内的security-role-ref元素的role-name字元素中。分别地声明角色可是高级ide处理安全信息更为容易。

22、      env-entry        此元素声明web应用的环境项。

23、      ejb-ref            此元素声明一个企业级bean的主目录的引用。

24、      ejb-local-ref           此元素声明一个企业级bean的本地主目录的引用。