1. web.xml
web.xml文件对任何的Web项目都是一个必须的文件,使用Struts时,还需要对该文件进行一些必须的配置。
1.1 ActionServlet的配置
一般需要在该文件中配置Struts的Servlet,示例配置如下:
Eg1. 简单的Struts的ActionServlet的配置:
view plaincopy to clipboardprint?
<servlet>
<servlet-name>action</servlet-name>
<servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
<init-param>
<param-name>config</param-name>
<param-value>/WEB-INF/struts-config.xml</param-value>
</init-param>
<init-param>
<param-name>debug</param-name>
<param-value>3</param-value>
</init-param>
<init-param>
<param-name>detail</param-name>
<param-value>3</param-value>
</init-param>
<load-on-startup>0</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>action</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>
对于复杂的应用,一般需要配置多个struts-config.xml文件,可以通过添加另外的<init-param>来实现,或者在多个配置文件中以为“,”隔开,如下所示:
Eg2. 配置多个struts-config.xml配置文件的ActionServlet的配置:
view plaincopy to clipboardprint?
<servlet>
<servlet-name>action</servlet-name>
<servlet-class>
org.apache.struts.action.ActionServlet
</servlet-class>
<init-param>
<param-name>config</param-name>
<param-value>/WEB-INF/struts-config.xml</param-value>
</init-param>
<init-param>
<param-name>config/IVR</param-name>
<param-value>/WEB-INF/struts-config-IVR.xml</param-value>
</init-param>
<init-param>
<param-name>config/wap</param-name>
<param-value>
/WEB-INF/struts-config-wap.xml
</param-value>
</init-param>
<init-param>
<param-name>debug</param-name>
<param-value>3</param-value>
</init-param>
<init-param>
<param-name>detail</param-name>
<param-value>3</param-value>
</init-param>
<load-on-startup>0</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>action</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>
1.2 欢迎和错误处理的配置
首先讲述一下欢迎文件清单<welcome-file-list>的配置,该元素可包含多个<welcome-file>子元素,当Web容器调用欢迎界面时,将首先查看第一个<welcome-file>子元素中定义的文件是否存在,若存在,则将其返回给用户,若不存在,继续判断第二个<welcome-file>子元素中定义的文件……,配置示例如下:
view plaincopy to clipboardprint?
<welcome-file-list>
<welcome-file>index.html</welcome-file>
<welcome-file>index.jsp</welcome-file>
<welcome-file>default.jsp</welcome-file>
</welcome-file-list>
接着讲述一下在web.xml中如何配置错误处理,这时需要使用<error-page>元素,该元素可以根据异常的类型来配置跳转的页面,还可以根据错误码来配置跳转页面,配置示例如下:
view plaincopy to clipboardprint?
<!-- 根据错误码进行跳转-->
<error-page>
<error-code>500</error-code>
<location>/error.jsp</location>
</error-page>
<!-- 根据异常进行跳转-->
<error-page>
<exception-type>java.lang.NullException</exception-type>
<location>/error.jsp</location>
</error-page>
1.3 tld文件的配置
若Web工程没有使用Struts的标签库,可以不在web.xml中使用Struts的标签库信息。当然若开发人员使用了struts的标签库,也可以直接在jsp页面中引入标签库,例如通过如下方式引入:
view plaincopy to clipboardprint?
<%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean"%>
<%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html"%>
<%@ taglib uri="/WEB-INF/struts-logic.tld" prefix="logic"%>
<%@ taglib uri="/WEB-INF/struts-nested.tld" prefix="nested"%>
在Struts中进行配置的的好处是因为可以在Struts中配置为tld文件配置一个简要的名称或者更加易懂的名称,例如在web.xml文件中增加如下配置:
view plaincopy to clipboardprint?
<taglib>
<taglib-uri>/tags/struts-bean</taglib-uri>
<taglib-location>/WEB-INF/struts-bean.tld</taglib-location>
</taglib>
<taglib>
<taglib-uri>/tags/struts-html</taglib-uri>
<taglib-location>/WEB-INF/struts-html.tld</taglib-location>
</taglib>
<taglib>
<taglib-uri>/tags/struts-logic</taglib-uri>
<taglib-location>/WEB-INF/struts-logic.tld</taglib-location>
</taglib>
<taglib>
<taglib-uri>/tags/struts-nested</taglib-uri>
<taglib-location>/WEB-INF/struts-nested.tld</taglib-location>
</taglib>
其中<taglib-uri>元素指定标签库的相对或者绝对URI地址,Web应用将根据这一URI来访问标签库;<taglib-location>元素指定标签库描述文件在文件资源系统中的物理位置。
此时在jsp页面通过如下方面引入标签库:
view plaincopy to clipboardprint?
<%@ taglib uri="/tags/struts-bean " prefix="bean"%>
<%@ taglib uri="/tags/struts-html" prefix="html"%>
<%@ taglib uri="/tags/struts-logic " prefix="logic"%>
<%@ taglib uri="/tags/struts-nested " prefix="nested"%>
1.4 完整配置实例
下面举一个使用Struts的Web项目的web.xml的简单配置实例(该实例开发人员也参考struts-1.2.8-bin.zip包的webapps目录下的struts-mailreader.war),内容如下所示:
view plaincopy to clipboardprint?
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE web-app
PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.2//EN"
"http://java.sun.com/j2ee/dtds/web-app_2_2.dtd">
<web-app>
<display-name>Struts Example Application</display-name>
<!-- Action Servlet Configuration -->
<servlet>
<servlet-name>action</servlet-name>
<servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
<init-param>
<param-name>config</param-name>
<param-value>/WEB-INF/struts-config.xml, /WEB-INF/struts-config-registration.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<!-- Action Servlet Mapping -->
<servlet-mapping>
<servlet-name>action</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>
<!-- 欢迎列表-->
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
<!-- 错误处理 -->
<error-page>
<exception-type>java.lang.Exception</exception-type>
<location>/error.jsp</location>
</error-page>
<taglib>
<taglib-uri>/tags/struts-bean</taglib-uri>
<taglib-location>/WEB-INF/struts-bean.tld</taglib-location>
</taglib>
<taglib>
<taglib-uri>/tags/struts-html</taglib-uri>
<taglib-location>/WEB-INF/struts-html.tld</taglib-location>
</taglib>
<taglib>
<taglib-uri>/tags/struts-logic</taglib-uri>
<taglib-location>/WEB-INF/struts-logic.tld</taglib-location>
</taglib>
<taglib>
<taglib-uri>/tags/struts-nested</taglib-uri>
<taglib-location>/WEB-INF/struts-nested.tld</taglib-location>
</taglib>
</web-app>
web.xml文件对任何的Web项目都是一个必须的文件,使用Struts时,还需要对该文件进行一些必须的配置。
1.1 ActionServlet的配置
一般需要在该文件中配置Struts的Servlet,示例配置如下:
Eg1. 简单的Struts的ActionServlet的配置:
view plaincopy to clipboardprint?
<servlet>
<servlet-name>action</servlet-name>
<servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
<init-param>
<param-name>config</param-name>
<param-value>/WEB-INF/struts-config.xml</param-value>
</init-param>
<init-param>
<param-name>debug</param-name>
<param-value>3</param-value>
</init-param>
<init-param>
<param-name>detail</param-name>
<param-value>3</param-value>
</init-param>
<load-on-startup>0</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>action</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>
对于复杂的应用,一般需要配置多个struts-config.xml文件,可以通过添加另外的<init-param>来实现,或者在多个配置文件中以为“,”隔开,如下所示:
Eg2. 配置多个struts-config.xml配置文件的ActionServlet的配置:
view plaincopy to clipboardprint?
<servlet>
<servlet-name>action</servlet-name>
<servlet-class>
org.apache.struts.action.ActionServlet
</servlet-class>
<init-param>
<param-name>config</param-name>
<param-value>/WEB-INF/struts-config.xml</param-value>
</init-param>
<init-param>
<param-name>config/IVR</param-name>
<param-value>/WEB-INF/struts-config-IVR.xml</param-value>
</init-param>
<init-param>
<param-name>config/wap</param-name>
<param-value>
/WEB-INF/struts-config-wap.xml
</param-value>
</init-param>
<init-param>
<param-name>debug</param-name>
<param-value>3</param-value>
</init-param>
<init-param>
<param-name>detail</param-name>
<param-value>3</param-value>
</init-param>
<load-on-startup>0</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>action</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>
1.2 欢迎和错误处理的配置
首先讲述一下欢迎文件清单<welcome-file-list>的配置,该元素可包含多个<welcome-file>子元素,当Web容器调用欢迎界面时,将首先查看第一个<welcome-file>子元素中定义的文件是否存在,若存在,则将其返回给用户,若不存在,继续判断第二个<welcome-file>子元素中定义的文件……,配置示例如下:
view plaincopy to clipboardprint?
<welcome-file-list>
<welcome-file>index.html</welcome-file>
<welcome-file>index.jsp</welcome-file>
<welcome-file>default.jsp</welcome-file>
</welcome-file-list>
接着讲述一下在web.xml中如何配置错误处理,这时需要使用<error-page>元素,该元素可以根据异常的类型来配置跳转的页面,还可以根据错误码来配置跳转页面,配置示例如下:
view plaincopy to clipboardprint?
<!-- 根据错误码进行跳转-->
<error-page>
<error-code>500</error-code>
<location>/error.jsp</location>
</error-page>
<!-- 根据异常进行跳转-->
<error-page>
<exception-type>java.lang.NullException</exception-type>
<location>/error.jsp</location>
</error-page>
1.3 tld文件的配置
若Web工程没有使用Struts的标签库,可以不在web.xml中使用Struts的标签库信息。当然若开发人员使用了struts的标签库,也可以直接在jsp页面中引入标签库,例如通过如下方式引入:
view plaincopy to clipboardprint?
<%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean"%>
<%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html"%>
<%@ taglib uri="/WEB-INF/struts-logic.tld" prefix="logic"%>
<%@ taglib uri="/WEB-INF/struts-nested.tld" prefix="nested"%>
在Struts中进行配置的的好处是因为可以在Struts中配置为tld文件配置一个简要的名称或者更加易懂的名称,例如在web.xml文件中增加如下配置:
view plaincopy to clipboardprint?
<taglib>
<taglib-uri>/tags/struts-bean</taglib-uri>
<taglib-location>/WEB-INF/struts-bean.tld</taglib-location>
</taglib>
<taglib>
<taglib-uri>/tags/struts-html</taglib-uri>
<taglib-location>/WEB-INF/struts-html.tld</taglib-location>
</taglib>
<taglib>
<taglib-uri>/tags/struts-logic</taglib-uri>
<taglib-location>/WEB-INF/struts-logic.tld</taglib-location>
</taglib>
<taglib>
<taglib-uri>/tags/struts-nested</taglib-uri>
<taglib-location>/WEB-INF/struts-nested.tld</taglib-location>
</taglib>
其中<taglib-uri>元素指定标签库的相对或者绝对URI地址,Web应用将根据这一URI来访问标签库;<taglib-location>元素指定标签库描述文件在文件资源系统中的物理位置。
此时在jsp页面通过如下方面引入标签库:
view plaincopy to clipboardprint?
<%@ taglib uri="/tags/struts-bean " prefix="bean"%>
<%@ taglib uri="/tags/struts-html" prefix="html"%>
<%@ taglib uri="/tags/struts-logic " prefix="logic"%>
<%@ taglib uri="/tags/struts-nested " prefix="nested"%>
1.4 完整配置实例
下面举一个使用Struts的Web项目的web.xml的简单配置实例(该实例开发人员也参考struts-1.2.8-bin.zip包的webapps目录下的struts-mailreader.war),内容如下所示:
view plaincopy to clipboardprint?
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE web-app
PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.2//EN"
"http://java.sun.com/j2ee/dtds/web-app_2_2.dtd">
<web-app>
<display-name>Struts Example Application</display-name>
<!-- Action Servlet Configuration -->
<servlet>
<servlet-name>action</servlet-name>
<servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
<init-param>
<param-name>config</param-name>
<param-value>/WEB-INF/struts-config.xml, /WEB-INF/struts-config-registration.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<!-- Action Servlet Mapping -->
<servlet-mapping>
<servlet-name>action</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>
<!-- 欢迎列表-->
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
<!-- 错误处理 -->
<error-page>
<exception-type>java.lang.Exception</exception-type>
<location>/error.jsp</location>
</error-page>
<taglib>
<taglib-uri>/tags/struts-bean</taglib-uri>
<taglib-location>/WEB-INF/struts-bean.tld</taglib-location>
</taglib>
<taglib>
<taglib-uri>/tags/struts-html</taglib-uri>
<taglib-location>/WEB-INF/struts-html.tld</taglib-location>
</taglib>
<taglib>
<taglib-uri>/tags/struts-logic</taglib-uri>
<taglib-location>/WEB-INF/struts-logic.tld</taglib-location>
</taglib>
<taglib>
<taglib-uri>/tags/struts-nested</taglib-uri>
<taglib-location>/WEB-INF/struts-nested.tld</taglib-location>
</taglib>
</web-app>
发表评论
-
struts2实现文件上传代码方法
2012-03-16 16:49 789/** * 获得图片 路径至 images * * ... -
struts2 中 datetimepicker 的bug 以及 解决方法
2012-03-16 16:47 1767从版本说起: struts2.0.14 , 调用标签date ... -
struts2实现文件上传
2012-03-05 17:00 502struts2实现文件上传 -
struts.xml(struts2配置)
2012-03-05 16:56 725struts.xml -
Hibernate 3.2 -- 入门学习
2011-12-09 11:18 6571:到Hibernate官网http://www.hibern ... -
struts2配置中Action的name 和package的name和namespace作用
2011-12-09 11:16 1264<package name="ajax&quo ... -
web.xml配置详解
2011-11-30 16:47 710web.xml配置详解 Web.xml常 ...
相关推荐
struts.xml和applicationContext.xml、web.xml的配置
spring在web.xml中和在struts中的不同配置..pdf
struts1 web.xml struts1配置
struts2.5 web.xml配置
以前和struts2一起使用的配置文件,struts2的核心控制器
flex4,struts2.3兼容配置web.xml
这份文件 把javaEE 中web.xml中的基本配置都 写在里面了
使用myeclipse8.5搭建SSH后,将struts.xml和applicationContext.xml移动到别的地方,示例中为webroot下的config文件夹中,web.xml中需要做的修改示例。其中对于返回上一层方式不同的myeclipse可能不同,如有的用../...
flex4,struts2.3兼容配置web.xml中的filter
Struts2手动搭建“所有的jar包(全)”及相应的struts.xml和web.xml全套
主要给大家介绍了关于Struts2.5版本中struts.xm与web.xml配置的更改方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
Web.xml中配置Struts[文].pdf
Web.xml中配置Struts[参考].pdf
国际物流云商项目server_web子工程的Struts.xml配置文件
struts安装,配置 如果你已经了解了MVC,那么使用Struts进行开发对你来说将是一件很爽的事情。下面来说一下基本配置方法(Struts1.X):1.下载Struts:2.加载jar包:3.配置web.xml:4.配置Struts-config.xml文件:
本文档详细讲解了关于web工程中web.xml文件相关配置;希望对web开发者有一定的帮助。
Struts应用采用两个基于XML的配置文件来配置,分别是web.xml和struts-cofig.xml文件.web.xml文件是配置所有web应用的,而struts-config.xml文件是struts专用的配置文件。事实上也是可以根据需要给这个配置文件起其他...
spring在web.xml中和在struts中的不同配置.[收集].pdf
不用多说了,有过JAVA WEB开发经历的朋友们都知道web.xml有多重要!这是CHM格式的参考文档,非常方便查阅!赶快下载吧~~~~
这里有4个Struts2.3.16.3项目中附带的案例,都是war文件,运行之后可以看到配置文件web.xml,struts.xml.以及需要的jar包可以直接拷出来。