posts - 0,  comments - 0,  trackbacks - 0


 

web.xml 定义:

站台的名称和说明

针对环境参数(Context)做初始化工作

Servlet 的名称和映射

Session 的设定

Taglibrary 的对映

JSP 网页设定

MimeType 处理

错误处理

利用JDNI取得站台资源

 

要了解web.xml的设定值,必须了解它的schema,web.xml中知道它的schema是由SumMicrosystems公司定制的,如果你想更为详细的了解它,

可以到http://java.sun.com/xml/ns/j2ee/web-mapp_2_4.xsd网页,那里有更为详细的介绍。

 

这里我介绍我们平常见得最都的.

 

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

<web-appxmlns="http://java.sun.com/xml/ns/j2ee"

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"

version="2.4">

<web-app>

这是一般在写XML时所做的声明,定义了XML的版本,编码格式,还有重要的指明schema的来源,http://java.sun.com/xml/ns/j2ee

/web-app_2_4.xsd.

 

<description>,<display-name>,<icon>

____________________________________________

 

<description> 站台描述</discription>

对站台做出描述.

 

<display-name> 站台名称</display-name>

定义站台的名称.

 

<icon>

icon 元素包含small-iconlarge-icon两个子元素.用来指定web站台中小图标和大图标的路径.

<small-icon>/ 路径/smallicon.gif</small-icon>

small-icon 元素应指向web站台中某个小图标的路径,大小为16X16pixel,但是图象文件必须为GIFJPEG格式,扩展名必须为:.gif

.jpg.

 

<large-icon>/ 路径/largeicon-jpg</large-icon>

large-icon 元素应指向web站台中某个大图表路径,大小为32X32pixel,但是图象文件必须为GIFJPEG的格式,扩展名必须为;gif

jpg.

范例:

<display-name>DevelopExample</display-name>

<description>JSP2.0TechBook'sExamples</description>

<icon>

<small-icon>/images/small.gif</small-icon>

<large-icon>/images/large.gir</large-icon>

</icon>

 

<distributable>

______________________________________

<distributable>

distributable 元素为空标签,它的存在与否可以指定站台是否可分布式处理.如果web.xml中出现这个元素,则代表站台在开发时已经

被设计为能在多个JSPContainer之间分散执行.

范例:

<distributable/>

 

<context-param>

___________________________________

<context-param>

context-param 元素用来设定web站台的环境参数(context),它包含两个子元素:

param-name param-value.

<param-name> 参数名称</param-name>

设定Context名称

<param-value> </param-value>

设定Context名称的值

</context-param>

范例:

<context-param>

<param-name>param_name</param-name>

<param-value>param_value</param-value>

</context-param>

此所设定的参数,JSP网页中可以使用下列方法来取得:

${initParam.param_name}

若在Servlet可以使用下列方法来获得:

Stringparam_name=getServletContext().getInitParamter("param_name");

 

<filter>

_________________________________

filter 元素用来声明filter的相关设定.filter元素除了下面介绍的的子元素之外,还包括<servlet>介绍过的<icon>,<display-name>

,<description>,<init-param>, 其用途一样.

<filter-name>Filter 的名称</filter-name>

定义Filter的名称.

<filter-class>Filter 的类名称</filter-class>

定义Filter的类名称.例如:com.foo.hello

</filter>

范例:

<filter>

<filter-name>setCharacterEncoding</filter-name>

<filter-class>coreservlet.javaworld.CH11.SetCharacterEncodingFilter</filter-class>

<init-param>

<param-name>encoding</param-name>

<param-value>GB2312</param-value>

</init-param>

</filter>

 

<filter-mapping>

______________________________________

<filter-mapping>

filter-mapping 元素的两个主要子元素filter-nameurl-pattern.用来定义Filter所对应的URL.

<filter-name>Filter 的名称</filter-name>

定义Filter的名称.

<url-pattern>URL</url-pattern>

Filter 所对应的RUL.

例如:<url-pattern>/Filter/Hello</url-pattern>

<servlet-name>Servlet 的名称<servlet-name>

定义servlet的名称.

<dispatcher>REQUEST|INCLUDE|FORWARD|ERROR</disaptcher>

设定Filter对应的请求方式,RQUEST,INCLUDE,FORWAR,ERROR四种,默认为REQUEST.

</filter-mapping>

范例:

<filter-mapping>

<filter-name>GZIPEncoding</filter-name>

<url-pattern>/*</url-pattern>

</filter-mapping>

 

<listener>

___________________________________________

<listener>

listener 元素用来定义Listener接口,它的主要子元素为<listener-class>

<listen-class>Listener 的类名称</listener-class>

定义Listener的类名称.例如:com.foo.hello

<listener>

范例:

<listener>

<listener-class>coreservlet.javaworld.CH11.ContenxtListener</listener-class>

</listener>

 

<servlet-mapping>

_____________________________________________

servlet-mapping 元素包含两个子元素servlet-nameurl-pattern.用来定义servlet所对应URL.

<servlet-name>Servlet 的名称</servlet-name>

定义Servlet的名称.

<url-pattern>ServletURL</url-pattern>

定义Servlet所对应的RUL.例如:<url-pattern>/Servlet/Hello</url-pattern>

</servlet-mapping>

范例:

<servlet-mapping>

<servlet-name>LoginChecker</servlet-name>

<url-pattern>/LoginChecker</url-pattern>

</servlet-mapping>

 

<session-cofing>

__________________________________

<session-config>

session-config 包含一个子元素session-timeout.定义web站台中的session参数.

<session-timeout> 分钟</session-timeout>

定义这个web站台所有session的有效期限.单位为分钟.

</session-config>

范例:

<session-config>

<session-timeout>20</session-timeout>

</session-config>

 

<mime-mapping>

___________________________________________________

<mima-mapping>

mime-mapping 包含两个子元素extensionmime-type.定义某一个扩展名和某一MIMEType做对映.

<extension> 扩展名名称</extension>

扩展名称

<mime-type>MIME 格式</mime-type>

MIME 格式.

</mime-mapping>

范例:

<mime-mapping>

<extension>doc</extension>

<mime-type>application/vnd.ms-word</mime-type>

</mime-mapping>

<mime-mapping>

<extension>xls</extension>

<mime-type>application/vnd.ms-excel</mime-type>

</mime-mapping>

<mime-mapping>

<extension>ppt</extesnion>

<mime-type>application/vnd.ms-powerpoint</mime-type>

</mime-mapping>

 

<welcome-file-list>

_____________________________________________

<welcome-file-list>

welcome-file-list 包含一个子元素welcome-file.用来定义首页列单.

<welcome-file> 用来指定首页文件名称</welcome-flie>

welcome-file 用来指定首页文件名称.我们可以用<welcome-file>指定几个首页,而服务器会依照设定的顺序来找首页.

范例:

<welcome-file-list>

<welcome-file>index.jsp</welcome-file>

<welcome-file>index.htm</welcome-file>

</welcome-file-list>

 

<error-page>

_________________________

<error-page>

error-page 元素包含三个子元素error-code,exception-typelocation.将错误代码(ErrorCode)或异常(Exception)的种类对应

web站台资源路径.

<error-code> 错误代码</error-code>

HTTPErrorcode, 例如:404

<exception-type>Exception</exception-type>

一个完整名称的Java异常类型

<location>/ 路径</location>

web站台内的相关资源路径

</error-page>

范例:

<error-page>

<error-code>404</error-code>

<location>/error404.jsp</location>

</error-page>

<error-page>

<exception-type>java.lang.Exception</exception-type>

<location>/except.jsp</location>

</error-page>

 

<jsp-config>

_______________________________________________

<jsp-config>

jsp-config 元素主要用来设定JSP的相关配置,<jsp:config>包括<taglib><jsp-property-group>两个子元素.其中<taglib>元素

JSP1.2时就已经存在了;<jsp-property-group>JSP2.0新增的元素.

<taglib>

taglib 元素包含两个子元素taglib-uritaglib-location.用来设定JSP网页用到的TagLibrary路径.

<taglib-uri>URI</taglib-uri>

taglib-uri 定义TLD文件的URI,JSP网页的taglib指令可以经由这个URI存取到TLD文件.

<taglib-location>/WEB-INF/lib/xxx.tld</taglib-laction>

TLD 文件对应Web站台的存放位置.

</taglib>

 

<jsp-property-group>

jsp-property-group 元素包含8个元素,分别为:

<description>Description</descrition>

此设定的说明

 

<display-name>Name</display-name>

此设定的名称

 

<url-pattern>URL</url-pattern>

设定值所影响的范围,:/CH2或者/*.jsp

 

<el-ignored>true|false</el-ignored>

若为true,表示不支持EL语法.

 

<scripting-invalid>true|false</scripting-invalid>

若为true表示不支持<%scription%>语法.

 

<page-encoding>encoding</page-encoding>

设定JSP网页的编码

 

<include-divlude>.jspf</include-divlude>

设置JSP网页的抬头,扩展名为.jspf

 

<include-coda>.jspf</include-coda>

设置JSP网页的结尾,扩展名为.jspf

</jsp-property-group>

</jsp-config>

范例:

<jsp-config>

<taglib>

<taglib-uri>Taglib</taglib-uri>

<taglib-location>/WEB-INF/tlds/MyTaglib.tld</taglib-location>

</taglib>

<jsp-property-group>

<description>

SpecialpropertygroupforJSPConfigurationJSPexample.

</description>

<display-name>JSPConfiguration</display-name>

<uri-pattern>/*</uri-pattern>

<el-ignored>true</el-ignored>

<page-encoding>GB2312</page-encoding>

<scripting-inivalid>true</scripting-inivalid>

............

</jsp-property-group>

</jsp-config>

 

<resource-ref>

________________________________________________

<resource-ref>

resource-ref 元素包括五个子元素description,res-ref-name,res-type,res-auth,res-sharing-scope.利用JNDI取得站台可

利用资源.

<description> 说明</description>

资源说明

 

<rec-ref-name> 资源名称</rec-ref-name>

资源名称

 

<res-type> 资源种类</res-type>

资源种类

 

<res-auth>Application|Container</res-auth>

资源由ApplicationContainer来许可

 

<res-sharing-scope>Shareable|Unshareable</res-sharing-scope>

资源是否可以共享.默认值为Shareable

范例:

<resource-ref>

<description>JNDIJDBCDataSourceofJSPBook</description>

<res-ref-name>jdbc/sample_db</res-ref-name>

<res-type>javax.sql.DataSoruce</res-type>

<res-auth>Container</res-auth>

</resource-ref>

 

 

posted on 2007-06-01 11:55 navy 阅读(196) 评论(0)  编辑  收藏 所属分类: Java

只有注册用户登录后才能发表评论。


网站导航: