webxml配置详解Word格式文档下载.docx

上传人:b****6 文档编号:8683696 上传时间:2023-05-12 格式:DOCX 页数:12 大小:21.98KB
下载 相关 举报
webxml配置详解Word格式文档下载.docx_第1页
第1页 / 共12页
webxml配置详解Word格式文档下载.docx_第2页
第2页 / 共12页
webxml配置详解Word格式文档下载.docx_第3页
第3页 / 共12页
webxml配置详解Word格式文档下载.docx_第4页
第4页 / 共12页
webxml配置详解Word格式文档下载.docx_第5页
第5页 / 共12页
webxml配置详解Word格式文档下载.docx_第6页
第6页 / 共12页
webxml配置详解Word格式文档下载.docx_第7页
第7页 / 共12页
webxml配置详解Word格式文档下载.docx_第8页
第8页 / 共12页
webxml配置详解Word格式文档下载.docx_第9页
第9页 / 共12页
webxml配置详解Word格式文档下载.docx_第10页
第10页 / 共12页
webxml配置详解Word格式文档下载.docx_第11页
第11页 / 共12页
webxml配置详解Word格式文档下载.docx_第12页
第12页 / 共12页
亲,该文档总共12页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

webxml配置详解Word格式文档下载.docx

《webxml配置详解Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《webxml配置详解Word格式文档下载.docx(12页珍藏版)》请在冰点文库上搜索。

webxml配置详解Word格式文档下载.docx

●URL"

注意:

在部署描述符中,<

--…-->

用于注释。

部署描述符的根元素是web-app。

DTD文件规定,web-app元素的子元素的语法如下:

ELEMENTweb-app(icon?

display-name?

description?

distributable?

context-param*,filter*,filter-mapping*,

listener*,servlet*,servlet-mapping*,session-config?

mime-mapping*,welcome-file-list?

error-page*,taglib*,resource-env-ref*,resource-ref*,

security-constraint*,login-config?

security-role*,env-entry*,

ejb-ref*,ejb-local-ref*)>

正如您所看到的,这个元素含有23个子元素,而且子元素都是可选的。

问号(?

)表示子元素是可选的,而且只能出现一次。

星号(*)表示子元素可在部署描述符中出现零次或多次。

有些子元素还可以有它们自己的子元素。

web.xml文件中web-app元素声明的是下面每个子元素的声明。

下面的章节讲述部署描述符中可能包含的所有子元素。

在Servlet2.3中,子元素必须按照DTD文件语法描述中指定的顺序出现。

比如,如果部署描述符中的web-app元素有servlet和servlet-mapping两个子元素,则servlet子元素必须出现在servlet-mapping子元素之前。

在Servlet2.4中,顺序并不重要。

下面对web.xml文件各元素进行详解

1.icon元素

icon元素用来指定GIF格式或JPEG格式的小图标(16×

16)或大图标(32×

32)的文件名。

ELEMENTicon(small-icon?

large-icon?

)>

ELEMENTsmall-icon(#PCDATA)>

ELEMENTlarge-icon(#PCDATA)>

icon元素包括两个可选的子元素:

small-icon子元素和large-icon子元素。

文件名是Web应用归档文件(WAR)的根的相对路径。

部署描述符并没有使用icon元素。

但是,如果使用XML工具编辑部署描述符,XML编辑器可以使用icon元素。

2.display-name元素

如果使用工具编辑部署描述符,display-name元素包含的就是XML编辑器显示的名称。

ELEMENTdisplay-name(#PCDATA)>

下面是一个含有display-name元素的部署描述符:

web-app>

display-name>

OnlineStoreApplication<

/display-name>

/web-app>

3.description元素

可以使用description元素来提供有关部署描述符的信息。

XML编辑器可以使用description元素的值。

ELEMENTdescription(#PCDATA)>

4.distributable元素

可以使用distributable元素来告诉servlet/JSP容器,编写将在分布式Web容器中部署的应用:

ELEMENTdistributableEMPTY>

例如,下面是一个含有distributable元素的部署描述符的例子:

distributable/>

5.context-param元素

context-param元素含有一对参数名和参数值,用作应用的servlet上下文初始化参数。

参数名在整个Web应用中必须是惟一的。

ELEMENTcontext-param(param-name,param-value,description?

ELEMENTparam-name(#PCDATA)>

ELEMENTparam-value(#PCDATA)>

param-name子元素包含有参数名,而param-value子元素包含的是参数值。

作为选择,可用description子元素来描述参数。

下面是一个含有context-param元素的有效部署描述符:

context-param>

param-name>

jdbcDriver<

/param-name>

param-value>

com.mysql.jdbc.Driver<

/param-value>

/context-param>

6.filter元素

filter元素用于指定Web容器中的过滤器。

在请求和响应对象被servlet处理之前或之后,可以使用过滤器对这两个对象进行操作。

利用下一节介绍的filter-mapping元素,过滤器被映射到一个servlet或一个URL模式。

这个过滤器的filter元素和filter-mapping元素必须具有相同的名称。

ELEMENTfilter(icon?

filter-name,display-name?

filter-class,init-param*)>

ELEMENTfilter-name(#PCDATA)>

ELEMENTfilter-class(#PCDATA)>

icon、display-name和description元素的用法和上一节介绍的用法相同。

init-param元素与context-param元素具有相同的元素描述符。

filter-name元素用来定义过滤器的名称,该名称在整个应用中都必须是惟一的。

filter-class元素指定过滤器类的完全限定的名称。

下面是一个使用filter元素的部署描述符的例子:

filter>

filter-name>

EncryptionFilter<

/filter-name>

filter-class>

com.branysoftware.EncryptionFilter<

/filter-class>

/filter>

7.filter-mapping元素

filter-mapping元素用来声明Web应用中的过滤器映射。

过滤器可被映射到一个servlet或一个URL模式。

将过滤器映射到一个servlet中会造成过滤器作用于servlet上。

将过滤器映射到一个URL模式中则可以将过滤器应用于任何资源,只要该资源的URL与URL模式匹配。

过滤是按照部署描述符的filter-mapping元素出现的顺序执行的。

ELEMENTfilter-mapping(filter-name,(url-pattern|servlet-name))>

ELEMENTurl-pattern(#PCDATA)>

ELEMENTservlet-name(#PCDATA)>

filter-name值必须对应filter元素中声明的其中一个过滤器名称。

下面是一个含有filter-mapping元素的部署描述符:

com.brainysoftware.EncryptionFilter<

filter-mapping>

servlet-name>

EncryptionFilteredServlet<

/servlet-name>

/filter-mapping>

8.listener元素

listener元素用来注册一个监听器类,可以在Web应用中包含该类。

使用listener元素,可以收到事件什么时候发生以及用什么作为响应的通知。

ELEMENTlistener(listener-class)>

ELEMENTlistener-class(#PCDATA)>

下面是一个含有listener元素的有效部署描述符:

listener>

listener-class>

MyAppListener<

/listener-class>

/listener>

9.servlet元素

servlet元素用来声明一个servlet。

ELEMENTservlet(icon?

servlet-name,display-name?

(servlet-class|jsp-file),init-param*,load-on-startup?

run-as?

security-role-ref*)>

ELEMENTservlet-class(#PCDATA)>

ELEMENTjsp-file(#PCDATA)>

ELEMENTinit-param(param-name,param-value,description?

ELEMENTload-on-startup(#PCDATA)>

ELEMENTrun-as(description?

role-name)>

ELEMENTrole-name(#PCDATA)>

init-param元素与context-param元素具有相同的元素描述符。

可以使用init-param子元素将初始化参数名和参数值传递给servlet。

(1)servlet-name、servlet-class和jsp-file元素

servlet元素必须含有servlet-name元素和servlet-class元素,或者servlet-name元素和jsp-file元素。

描述如下:

●servlet-name元素用来定义servlet的名称,该名称在整个应用中必须是惟一的。

●servlet-class元素用来指定servlet的完全限定的名称。

●jsp-file元素用来指定应用中JSP文件的完整路径。

这个完整路径必须由a/开始。

(2)load-on-startup元素

当启动Web容器时,用load-on-startup元素自动将servlet加入内存。

加载servlet就意味着实例化这个servlet,并调用它的init方法。

可以使用这个元素来避免第一个servlet请求的响应因为servlet载入内存所导致的任何延迟。

如果load-on-startup元素存在,而且也指定了jsp-file元素,则JSP文件会被重新编译成servlet,同时产生的servlet也被载入内存。

load-on-startup元素的内容可以为空,或者是一个整数。

这个值表示由Web容器载入内存的顺序。

举个例子,如果有两个servlet元素都含有load-on-startup子元素,则load-on-startup子元素值较小的servlet将先被加载。

如果load-on-startup子元素值为空或负值,则由Web容器决定什么时候加载servlet。

如果两个servlet的load-on-startup子元素值相同,则由Web容器决定先加载哪一个servlet。

(3)run-as元素

如果定义了run-as元素,它会重写用于调用Web应用中servlet所设定的EnterpriseJavaBean(EJB)的安全身份。

Role-name是为当前Web应用定义的一个安全角色的名称。

(4)security-role-ref元素

security-role-ref元素定义一个映射,该映射在servlet中用isUserInRole(Stringname)调用的角色名与为Web应用定义的安全角色名之间进行。

security-role-ref元素的描述如下:

ELEMENTsecurity-role-ref(description?

role-name,role-link)>

ELEMENTrole-link(#PCDATA)>

role-link元素用来将安全角色引用链接到已定义的安全角色。

role-link元素必须含有已经在security-role元素中定义的一个安全角色的名称。

(5)FacesServlet的servlet元素

在JSF应用中,需要为FacesServlet定义一个servlet元素,如下所示:

DOCTYPEweb-appPUBLIC

--FacesServlet-->

servlet>

FacesServlet<

servlet-class>

javax.faces.webapp.FacesServlet<

/servlet-class>

load-on-startup>

1<

/load-on-startup>

/servlet>

--FacesServletMapping-->

servlet-mapping>

url-pattern>

/faces/*<

/url-pattern>

/servlet-mapping>

10.servlet-mapping元素

seervlet-mapping元素将URL模式映射到某个servlet。

ELEMENTservlet-mapping(servlet-name,url-pattern)>

在前面的“servlet元素”一节中已经介绍了使用servlet-mapping元素的例子。

11.session-config元素

session-config元素为Web应用中的javax.servlet.http.HttpSession对象定义参数。

ELEMENTsession-config(session-timeout?

ELEMENTsession-timeout(#PCDATA)>

session-timeout元素用来指定默认的会话超时时间间隔,以分钟为单位。

该元素值必须为整数。

如果session-timeout元素的值为零或负数,则表示会话将永远不会超时。

下面是一个部署描述符,在用户最近访问HttpSession对象30分钟后,HttpSession对象默认为无效:

session-config>

session-timeout>

30<

/session-timeout>

/session-config>

12.mime-mapping元素

mime-mapping元素将mime类型映射到扩展名。

ELEMENTmime-mapping(extension,mime-type)>

ELEMENTextension(#PCDATA)>

ELEMENTmime-type(#PCDATA)>

extension元素用来描述扩展名。

mime-type元素则为MIME类型。

举个例子,下面的部署描述符将扩展名txt映射为text/plain:

mime-mapping>

extension>

txt<

/extension>

mime-type>

text/plain<

/mime-type>

/mime-mapping>

13.welcome-file-list元素

当用户在浏览器中输入的URL不包含某个servlet名或JSP页面时,welcome-file-list元素可指定显示的默认文件。

ELEMENTwelcome-file-list(welcome-file+)>

ELEMENTwelcome-file(#PCDATA)>

举个例子说明,假设用户在浏览器的地址框中输入

welcome-file子元素用于指定默认文件的名称。

welcome-file-list元素可以包含一个或多个welcome-file子元素。

如果在第一个welcome-file元素中没有找到指定的文件,Web容器就会尝试显示第二个,以此类推。

下面是一个包含welcome-file-list元素的部署描述符。

该元素包含两个welcome-file元素:

第一个指定应用目录中的main.html文件,第二个定义jsp目录下的welcom.jsp文件,jsp目录也在应用目录下。

-//SunMicrosystems,Inc.//DTDWebApplication2.3

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 求职职场 > 简历

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2