<interceptor name="alias" class="com.opensymphony.xwork.interceptor.AliasInterceptor"/>
<!--不同的request的相似参数别名转化-->
<interceptor name="autowiring" class="com.opensymphony.xwork.spring.interceptor.ActionAutowiringInterceptor"/>
<!--自动装配 就是无需显式的指定bean的合作者,由framework根据setter方法去找到相应的bean,并完成设置工作。-->
<interceptor name="chain" class="com.opensymphony.xwork.interceptor.ChainingInterceptor"/>
<!--将前一个执行结束的Action属性设置到当前的Action中。它被用在ResultType为“chain”指定结果的Action中,该结果Action对象会从OgnlValueStack中获得前一个Action对应的属性,它实现Action链之间的数据传递;-->
<interceptor name="component" class="com.opensymphony.xwork.interceptor.component.ComponentInterceptor"/>
<!--激活组件功能支持,让注册过的组件在当前Action中可用,即为Action提供IoC
【全文】
<interceptor name="alias" class="com.opensymphony.xwork.interceptor.AliasInterceptor"/>
<!--不同的request的相似参数别名转化-->
<interceptor name="autowiring" class="com.opensymphony.xwork.spring.interceptor.ActionAutowiringInterceptor"/>
<!--自动装配 就是无需显式的指定bean的合作者,由framework根据setter方法去找到相应的bean,并完成设置工作。-->
<interceptor name="chain" class="com.opensymphony.xwork.interceptor.ChainingInterceptor"/>
<!--将前一个执行结束的Action属性设置到当前的Action中。它被用在ResultType为“chain”指定结果的Action中,该结果Action对象会从OgnlValueStack中获得前一个Action对应的属性,它实现Action链之间的数据传递;-->
<interceptor name="component" class="com.opensymphony.xwork.interceptor.component.ComponentInterceptor"/>
<!--激活组件功能支持,让注册过的组件在当前Action中可用,即为Action提供IoC(依赖倒转控制)框架的支持;-->
<interceptor name="conversionError" class="com.opensymphony.webwork.interceptor.WebWorkConversionErrorInterceptor"/>
<!--用来处理框架进行类型转化(Type Conversion)时的出错信息。它将存储在ActionContext中的类型转化(Type Conversion)错误信息转化成相应的Action字段的错误信息,保存在堆栈中。根据需要,可以将这些错误信息在视图中显示出来。-->
<interceptor name="createSession" class="com.opensymphony.webwork.interceptor.CreateSessionInterceptor" />
<!--自动创建一个httpsession对象,对于某些需要有httpsession对象才能正常工作的拦截器有用-->
<interceptor name="external-ref" class="com.opensymphony.xwork.interceptor.ExternalReferencesInterceptor"/>
<!--标记指定外部引用;name属性值要与Action类中的属性名一致 -->
<interceptor name="execAndWait" class="com.opensymphony.webwork.interceptor.ExecuteAndWaitInterceptor"/>
<!--后台执行action,发送给用户等待画面-->
<interceptor name="exception" class="com.opensymphony.xwork.interceptor.ExceptionMappingInterceptor"/>
<!--提供了异常处理的主要核心功能,异常处理允许你把一个异常映射到一个结果码-->
<interceptor name="fileUpload" class="com.opensymphony.webwork.interceptor.FileUploadInterceptor"/>
<!--支持文件上传的拦截器,
参数 [file name]是被html表单中上传得文件的名字
maximumsize这个市允许上传到action中的文件最大长度(以byte为单位,注意这个参数和在webwork.properties中定义的属性没有关系,默认2mb)
allowedtype 以逗号分割的contenttype类型列表(例如text/html),这些列表示这个拦截器允许的可以上传到action中contenttype。如果没有指定 就是允许任何上传类型
<action name="doUpload" class="com.examples.UploadAction">
<interceptor-ref name="fileUpload"/>
<interceptor-ref name="basicstack"/>
</action>
-->
<interceptor name="i18n" class="com.opensymphony.xwork.interceptor.I18nInterceptor"/>
<!--把所选的地域放入session中
负责把session中指定的区域设置为当前请求的区域设置,并且这个拦截器还会根据请求中的参数来改变区域设置。
这就说你可以用来动态的改变用户session中区域设置。这对于实现多语言支持并允许用户在任何时候更改语言很有用。
-->
<interceptor name="logger" class="com.opensymphony.xwork.interceptor.LoggingInterceptor"/>
<!--在日志信息中输出要执行的Action信息-->
<interceptor name="model-driven" class="com.opensymphony.xwork.interceptor.ModelDrivenInterceptor"/>
<!--如果Action实现ModelDriven接口,它将getModel()取得的模型对象存入OgnlValueStack中-->
<interceptor name="params" class="com.opensymphony.xwork.interceptor.ParametersInterceptor"/>
<!--将Request请求的参数设置到相应Action对象的属性中,用户注册例子用到过这个拦截器-->
<interceptor name="prepare" class="com.opensymphony.xwork.interceptor.PrepareInterceptor"/>
<!--在Action执行之前调用Action的prepare()方法,这个方法是用来准备Action执行之前要做的工作。它要求我们的Action必需实现com.opensymphony.xwork. Preparable接口
当你需要在action中的方法执行之前执行一些逻辑。
<!-- Calls the params interceptor twice, allowing you to pre-load data for the second time
parameters are set -->
<action name="someAction" class="com.examples.SomeAction">
<interceptor-ref name="params"/>
<interceptor-ref name="prepare"/>
<interceptor-ref name="basicStack"/>
<result name="success">good_result.ftl</result>
</action>
-->
<interceptor name="static-params" class="com.opensymphony.xwork.interceptor.StaticParametersInterceptor"/>
<!--将xwork.xml配置文件里定义的Action参数,设置到对应的Action中。Action参数使用<param />标签,是<action />标签的直接子元素。我们这里定义的Action类必需实现com.opensymphony.xwork.config.entities. Parameterizable接口-->
<interceptor name="scope" class="com.opensymphony.webwork.interceptor.ScopeInterceptor"/>
<!--为了实现在webwork中实现类似向导的功能而设计的,其中的问题是,一些应用程序有些在application范围内的公用参数,例如pagelen(每个页面的记录数)。有了这个拦截器就不用让每个action都检查这样的参数是否存在,而是让这个拦截器去检查并把这些参数从session中取出
参数:
session 一个限制在session范围内的action属性列表
application一个限制在application范围内的属性列表
key 一个session/application 属性的主键前缀
class 根据action的名称空间和类来创建一个不重复的前缀,这是默认值
action根据action的名称空间和action的名称创建一个不重复的前缀
任意一个字符串作为主键前缀
type 下列支之一
start 表示这是一个向导的开始action。所有session范围内的属性将被重设为默认值
end 表示在这个action执行以后,session范围内的属性将会从session中清除
any 其他值或者没有值意思这时可一个中间action。
<!-- ##filter#orderBy###########action#######,
#############scope###. #session#############Session##########.
######Application######-->
<action name="someAction" class="com.examples.SomeAction">
<interceptor-ref name="basicStack"/>
<interceptor-ref name="hibernate"/>
<interceptor-ref name="scope">
<param name="session">filter,orderBy</param>
<param name="autoCreateSession">true</param>
</interceptor-ref>
-->
<interceptor name="servlet-config" class="com.opensymphony.webwork.interceptor.ServletConfigInterceptor"/>
<!--
提供Action直接对HttpServletRequest或HttpServletResponse等JavaServlet api的访问,Action要实现相应的接口,例如:ServletRequestAware或ServletResponseAware等。如果必需要提供对JavaServlet api的访问,我们建议使用ServletActionContext,在前面ActionContext章节中有介绍。
-->
<interceptor name="sessionAutowiring" class="com.opensymphony.webwork.spring.interceptor.SessionContextAutowiringInterceptor"/>
<interceptor name="timer" class="com.opensymphony.xwork.interceptor.TimerInterceptor"/>
<!--记录Action执行的时间,并做为日志信息输出-->
<interceptor name="token" class="com.opensymphony.webwork.interceptor.TokenInterceptor"/>
<!--核对当前Action请求(request)的有效标识,防止重复提交Action请求(request)。-->
<interceptor name="token-session" class="com.opensymphony.webwork.interceptor.TokenSessionStoreInterceptor"/>
<!--功能同上,但是当提交无效的Action请求标识时,它会将请求数据保存到session中。-->
<interceptor name="validation" class="com.opensymphony.xwork.validator.ValidationInterceptor"/>
<!--实现使用xml配置文件({Action}-validation.xml)对Action属性值进行验证,详细请看后面介绍的验证框架。-->
<interceptor name="workflow" class="com.opensymphony.xwork.interceptor.DefaultWorkflowInterceptor"/>
<!--调用Action类的验证功能,假设Action使用ValidationAware实现验证(ActionSupport提供此功能),如果验证没有通过,workflow会将请求返回到input视图(Action的<result />中定义的)。-->
posted on 2007-05-29 23:07
larryjava 阅读(703)
评论(0) 编辑 收藏