原文地址:http://skyuck.iteye.com/blog/545988

默认情况下,struts2是无法处理以.do为后缀的请求url的(默认情况下是.action或者不填,可以参见org.apache.struts2包下的default.properties文件)。
但是struts2是一个高配置的框架,所以我们可以通过配置来处理以.do为后缀的请求。

struts2提供了一系列的常量来供我们来配置。

如:我们可以在struts.xml文件中配置

  1. <constant name="struts.action.extension" value="do"/>

如果配置多个,可以以逗号分隔开

如:

  1. <constant name="struts.action.extension" value="do,action"/>

使struts2能够处理以.do为后缀的url。

同时我们也可以通过资源文件的方式来配置。

可以在我们项目的类路径下创建一个struts.properties文件。

然后可以在此资源文件中加入

引用

struts.action.extension=do

struts2还提供了其他的方式来加载常量,推荐在struts.xml文件中配置。

struts2加载常量的顺序是:

引用

struts-default.xml

struts-plugin.xml

struts.xml

struts.properties

web.xml

我们可以通过启动tomcat时控制台打印的结果可以看到

引用

信息: Parsing configuration file [struts-default.xml]

2009-12-10 22:47:46 com.opensymphony.xwork2.util.logging.jdk.JdkLogger info

信息: Unable to locate configuration files of the name struts-plugin.xml, skipping

2009-12-10 22:47:46 com.opensymphony.xwork2.util.logging.jdk.JdkLogger info

信息: Parsing configuration file [struts-plugin.xml]

2009-12-10 22:47:46 com.opensymphony.xwork2.util.logging.jdk.JdkLogger info

信息: Parsing configuration file [struts.xml]

在不同的配置文件里存在相同的常量的话,后者将会覆盖前者.

[转]struts2处理.do后缀的请求的更多相关文章

  1. struts2处理.do后缀的请求

    默认情况下,struts2是无法处理以.do为后缀的请求url的(默认情况下是.action或者不填,可以参见org.apache.struts2包下的default.properties文件). 但 ...

  2. Struts2 无后缀action请求

    如果将Struts2的filter-mapping配置成 <filter-mapping> <filter-name>struts2</filter-name> & ...

  3. Struts2(接受表单参数)请求数据自动封装和数据类型转换

    Struts2请求数据自动封装: (1)实现原理:参数拦截器 (2)方式1:jsp表单数据填充到action中的属性:        普通的成员变量,必须给set,get可以不给的.    注意点,A ...

  4. 如何删除Struts2动作的后缀扩展名

    在Struts2中,所有动作类有一个默认的后缀 .action 扩展. 例如, <struts> <package name="default" namespac ...

  5. springboot拦截json后缀的请求,返回json数据

    需求:请求list.json返回以下数据 { "jsonResult": { "code": 200, "message": "查 ...

  6. Struts2第四篇【请求数据自动封装、Action得到域对象】

    前言 前三篇的Struts博文基本把Struts的配置信息讲解完了-..本博文主要讲解Struts对数据的处理 一般地,我们使用Servlet的时候都是分为几个步骤的: 得到web层的数据.封装数据 ...

  7. 说说struts2中拦截器的请求流程一(模拟大致流程)

    本文可作为北京尚学堂struts2课程的学习笔记. 首先 什么是拦截器?拦截器能干什么? 拦截器,顾名思义就是拦截对象然后做操作的东西,至于是拦截谁?那自然是拦截action了.能做什么操作呢?你想让 ...

  8. Struts2 的Action中取得请求参数值的几种方法

    先看GetRequestParameterAction类代码:  Java代码 public class GetRequestParameterAction extends ActionSupport ...

  9. 在Struts2的Action中取得请求参数值的几种方法

    先看GetRequestParameterAction类代码: public class GetRequestParameterAction extends ActionSupport { priva ...

随机推荐

  1. android 很详细的序列化过程Parcelable

    直接上代码:注释都写的很清楚了. public class Entry implements Parcelable{ public int userID; public String username ...

  2. mac osx vi 设置tab 四个空格

    如果想永久设置那么,vi ~/.vimrc,将以下内容加到文件中 :set tabstop=4 设定tab宽度为4个字符 :set shiftwidth=4 设定自动缩进为4个字符 :set expa ...

  3. javascript深入浅出(imooc)

    第一章 数据类型 1,六种数据类型:原始类型(number,string,boolean,null,undefined) + object对象(Function Array Date) 2,隐式转换: ...

  4. IIS 7.5 Application Warm-Up Module

    http://www.cnblogs.com/shanyou/archive/2010/12/21/1913199.html 有些web应用在可以处理用户访问之前,需要装载很多的数据,或做一些花费很大 ...

  5. 敏捷开发XP

    一.组建XP团队 在XP团队中,由以下组成     二.项目相关环境 1.利益相关者:与PM一样,对项目进行管理 2.执行发起人:最终客户(必须定期演示)   三.XP组成 四.思考      1.结 ...

  6. HDFS Federation (读书笔记)

    HDFS Federation (读书笔记) HDFS的架构 HDFS包含两个层次:命名空间管理(Namespace) 和 块/存储管理(Block Storage). 命名空间管理(Namespac ...

  7. WPF 自定义ListBox

     如题,要实现一个如下的列表,该如何实现? 在设计过程中,会遇到如下问题: 1.ListBox中ListBoxItem的模板设计 2.ListBox中ListBoxItem的模板容器设计 3.List ...

  8. 【Windows编程】系列第七篇:Menubar的创建和使用

    上一篇我们学习了利用windows API创建工具栏和菜单栏,与上一篇紧密联系的就是菜单栏,菜单栏是一个大多数复杂一些的Windows应用程序不可或缺的部分.比如下图就是Windows自带的记事本的菜 ...

  9. 理解 OpenStack + Ceph (9): Ceph 的size/min_size/choose/chooseleaf/scrubbing/repair 等概念

    本系列文章会深入研究 Ceph 以及 Ceph 和 OpenStack 的集成: (1)安装和部署 (2)Ceph RBD 接口和工具 (3)Ceph 物理和逻辑结构 (4)Ceph 的基础数据结构 ...

  10. 《javascript》高级程序设计——类型转换错误

    容易发生类型转换错误的另一个地方,就是流控制语句.像if之类的语句在确定下一步操作之前,会自动把任何值转换成布尔值.尤其是if语句,如果使用不当,最容易出错.来看下面的例子. function con ...