`
flashdream8
  • 浏览: 680547 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

struts2在web.xml的配置

阅读更多

注意点:如果web容器是J2EE1.3(servlet2.3)及以前的规范,由于不会自动加载struts的标签库,所以需要在web.xml文件中手动加载struts的标签库,文件名struts-tags.tld,一般放在WEB-INF下面,可以自己指定,在web.xml中配置的加载标签定义文件如下:
  <!-- 手动配置Struts 2的标签库 -->
  <taglib>
  <!-- 配置Struts 2标签库的URI jsp文件中应用的uri,类似于名字空间-->
  <taglib-uri>/s</taglib-uri>
  <!-- 指定Struts 2标签库定义文件的物理位置 -->
  <taglib-location>/WEB-INF/struts-tags.tld</taglib-location>
  </taglib>

 

但如果web容器是J2EE1.4(servlet2.4),那么web容器会自动加载标签库,Struts 2的标签库定义文件包含在struts2-core-2.0.6.jar文件里,在struts2-core-2.0.6.jar文件的META-INF路径下,包含了一个struts-tag.tld文件,  这个文件就是Struts 2的标签库定义文件,Servlet 2.4规范会自动加载该标签库文件,其中struts-tags.tld文件里包含了加载信息的片断:如下:

<taglib>
  <!-- 定义标签库的版本 -->
  <tlib-version>2.2.3</tlib-version>
  <!-- 定义标签库所需的JSP版 -->
  <jsp-version>1.2</jsp-version>
  <short-name>s</short-name>
  <!-- 定义Struts 2标签库的URI,jsp文件中应用的uri-->
  <uri>/struts-tags</uri>...
  </taglib>

 

配置核心控制器

web.xml是web应用中加载有关servlet信息的重要配置文件,起着初始化servlet,filter等web程序的作用。
   通常,所有的MVC框架都需要Web应用加载一个核心控制器,那采取什么方法加载这样的核心控制器呢,servlet或
   filter成为了很好的选择,因为它们会随着web服务的启用而自动的载入。对于Struts 2框架而言,需要加载FilterDispatcher,
   只要Web应用负责加载FilterDispatcher,FilterDispatcher将会加载应用的Struts 2框架。
   因为Struts 2将核心控制器设计成Filter,而不是一个普通Servlet。故为了让Web应用加载FilterDispacher,只需要在web.xml文件中配置FilterDispatcher即可。
   配置FilterDispatcher的代码片段如下:
   <!-- 配置Struts 2框架的核心Filter -->
   <filter>
   <!-- 配置Struts 2核心Filter的名字 -->
   <filter-name>struts</filter-name>
   <!-- 配置Struts 2核心Filter的实现类 -->
   <filter-class>org.apache.struts2.dispatcher.FilterDispatcher </filter-class>
   <init-param>
   <!-- 配置Struts 2框架默认加载的Action包结构 -->
   <param-name>actionPackages</param-name>
   <param-value>org.apache.struts2.showcase.person</param-value>
   </init-param>
   <!-- 配置Struts 2框架的配置提供者类 -->
   <init-param>
   <param-name>configProviders </param-name>
   <param-value>lee.MyConfigurationProvider</param-value>
   </init-param>
   </filter> 
   <!-- 配置Filter拦截的URL -->
   <filter-mapping>
   <!-- 配置Struts 2的核心FilterDispatcher拦截所有用户请求 -->
   <filter-name>struts</filter-name>
   <url-pattern>/*</url-pattern>
   </filter-mapping>   
  其中有3个初始化参数有特殊意义:
  config:该参数的值是一个以英文逗号(,)隔开的字符串,每个字符串都是一个XML配置文件的位置。Struts 2框架将自动加载该属性指定的系列配置文件。
  actionPackages:该参数的值也是一个以英文逗号(,)隔开的字符串,每个字符串都是一个包空间,Struts 2框架将扫描这些包空间下的Action类。
  configProviders:如果用户需要实现自己的ConfigurationProvider类,用户可以提供一个或多个实现了ConfigurationProvider接口的类,然后将这些类的类名设置成该属性的值,多个类名之间以英文逗号(,)隔开。
  除此之外,还可在此处配置Struts 2常量,每个<init-param>元素配置一个Struts 2常量,其中<param-name>子元素指定了常量name,而<param-value>子元素指定了常量value。
  至于filter-mapping属性是过滤器(Filter)必须的一个属性,用于过滤请求的路径,此处一般就设为/*形式,对所有请求uri进行拦截(过滤),除非你要做一些特殊的处理。
  到此,配置完struts2的核心控制器后,基本完成了struts2在web.xml文件中的配置。

 

<转自:http://lvqionghua.blog.163.com/blog/static/1852774200911503342100/>

分享到:
评论

相关推荐

    struts1中web.xml配置详解

    在 struts1 框架中,web.xml 文件是必不可少的配置文件之一,它用于配置 Struts 应用程序的核心组件 ActionServlet。本文将详细解释 web.xml 文件中的配置项和相关知识点。 1. 配置 Struts 的 ActionServlet 在 ...

    struts2的web.xml配置文件

    以前和struts2一起使用的配置文件,struts2的核心控制器

    spring在web.xml中和在struts中的不同配置..pdf

    在本文中,我们将探讨Spring在`web.xml`中的配置与在Struts中的配置差异,以及这两种配置方式背后的基本原理。 首先,Spring的核心是ApplicationContext,它是一个管理Bean的容器,可以看作是应用程序的上下文环境...

    struts.xml和applicationContext.xml、web.xml的配置

    在Java Web开发中,`struts.xml`, `applicationContext.xml` 和 `web.xml` 是三个至关重要的配置文件,它们各自负责不同的职责,并协同工作来构建一个完整的应用框架。以下是关于这三个配置文件的详细说明。 首先,...

    struts2.5 web.xml配置

    ### Struts2.5 Web.xml配置概述 #### 1. **XML声明和命名空间** - **XML声明**:`&lt;?xml version="1.0" encoding="UTF-8"?&gt;` 定义了文档类型为XML,并指定了编码方式。 - **根元素**:`&lt;web-app&gt;` 元素是`web.xml`...

    在web.xml中配置action或.do

    ### 在web.xml中配置action或.do的理解与实践 #### 一、引言 在Web开发领域,特别是基于Java的Web应用程序开发中,`web.xml`文件扮演着至关重要的角色。它不仅定义了Web应用的基本配置,还管理着诸如Servlet、过滤...

    Struts struts-config.xml配置

    ### Struts struts-config.xml配置详解 #### 一、引言 在Java Web开发领域,Struts框架一直是构建MVC架构应用的重要工具之一。而`struts-config.xml`配置文件则是Struts应用的核心配置文件,它负责管理Struts应用中...

    Struts2.5版本struts.xml与web.xml配置的更改方法

    struts.xml配置文件头部信息的DTD改为最新** Struts2.5版本的`struts.xml`配置文件需要使用最新的DTD(Document Type Definition),以确保解析正确。将头部信息的DTD链接更改为: ```xml &lt;?xml version="1.0" ...

    sruts2.0 web.xml 配置文件

    `web.xml`配置文件在Struts2中扮演着至关重要的角色,它是整个应用的部署描述符,定义了应用程序的入口点、过滤器、Servlet以及其他Web组件的配置信息。在这里,我们将深入探讨`web.xml`配置文件在Struts2中的应用...

    Struts框架中struts-config.xml文件配置小结

    而在Struts框架中,`struts-config.xml`文件扮演着至关重要的角色,它是Struts框架的核心配置文件,用于配置应用程序的各种行为和组件。本文将对`struts-config.xml`中的关键元素进行详细解析,并结合实际示例来帮助...

    web.xml 配置大全

    - `&lt;context-param&gt;`可以设置Spring的上下文参数,如配置XML配置文件的位置。 9. **Struts2框架集成** - Struts2的配置主要通过`&lt;filter&gt;`和`&lt;filter-mapping&gt;`,定义StrutsPrepareAndExecuteFilter。 10. **JSF...

    flex4,struts2.3兼容配置web.xml

    flex4,struts2.3兼容配置web.xml

    struts、applicationContext配置文件移动后web.xml配置示例

    使用myeclipse8.5搭建SSH后,将struts.xml和applicationContext.xml移动到别的地方,示例中为webroot下的config文件夹中,web.xml中需要做的修改示例。其中对于返回上一层方式不同的myeclipse可能不同,如有的用../...

    Struts-config.xml配置详解

    通过在struts-config.xml中配置plug-in元素,可以指定插件类的全路径,并设置插件初始化时使用的参数。 了解和掌握struts-config.xml中的8个主要配置元素的使用方法,是进行Struts框架应用开发的基础。通过合理配置...

    struts.xml和struts.properties配置详解

    在Struts中,`struts.xml`和`struts.properties`文件是两个核心的配置文件,它们分别负责定义应用的行为和设置全局属性。 **`struts.xml`配置详解** `struts.xml`是Struts 2框架的核心配置文件,用于定义动作映射...

    org.springframework.web.struts-3.1.0.M2.jar

    同时,Struts的配置文件(struts-config.xml或struts2的struts.xml)也需要进行相应的调整,引入Spring的插件和配置信息。 `springframework-license.txt`文件则包含了Spring框架的许可协议,它规定了软件的使用、...

    struts2 使用注解现在零配置不需要在使用struts.xml配置文件,可以直接跑

    Struts2是一款强大的Java Web...通过合理利用这些注解,你可以创建出结构清晰、易于维护的Struts2项目,而无需担心过多的XML配置带来的困扰。在实际开发中,结合Spring等框架,还能进一步提升应用的灵活性和可扩展性。

    Web.xml中配置Struts[参考].pdf

    Struts框架在Web.xml中的配置 Struts框架是Java EE中的一种基于MVC模式的Web应用程序框架,它提供了一个灵活的架构,可以快速开发Web应用程序。在Struts框架中,配置文件Web.xml是核心配置文件之一,本文将详细介绍...

    Web.xml中配置Struts[文].pdf

    7. Filter配置:虽然不是直接在`web.xml`中配置Struts,但Struts2引入了Filter的概念,`struts2-core.jar`包含了一个名为`StrutsPrepareAndExecuteFilter`的Filter,用来处理所有的HTTP请求,替代了Struts1中的...

    javaweb项目中web.xml的作用

    2. servlet:用于配置servlet,例如struts1的ActionServlet是struts1的核心。 3. servlet-mapping:用于配置servlet的映射关系,例如将ActionServlet映射到*.do。 web.xml文件不是一个Web的必要文件,没有web.xml...

Global site tag (gtag.js) - Google Analytics