今天领导布置任务需要为struts2配置一个全局的拦截器,作用是拦截url请求但不拦截ajax请求,对所有的url请求进行session失效判断。session失效时间的配置在web.xml中
<session-config>
<session-timeout>30</session-timeout>
</session-config>
首先创建全局的拦截器文件struts-interceptor.xml,在文件中创建全局的拦截器和全局的resault,代码如下。
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.1//EN"
"http://struts.apache.org/dtds/struts-2.1.dtd">
<struts>
<package name="interceptor-default" extends="json-default">
<!-- 全局的拦截器 -->
<interceptors>
<interceptor name="sessionItcpt"
class="com.hlyd.s1.struts.iterceptor.SessionIterceptor">
</interceptor>
<!-- 自定义拦截器栈 -->
<interceptor-stack name="mySessionStack">
<interceptor-ref name="sessionItcpt"></interceptor-ref>
<interceptor-ref name="defaultStack"></interceptor-ref>
</interceptor-stack>
</interceptors>
<!-- 将自定义拦截器栈设置默认的拦截器 -->
<default-interceptor-ref name="mySessionStack"></default-interceptor-ref>
<!-- 定义全局的resault -->
<global-results>
<result name="json" type="velocity">/pages/json.vm</result>
<result name="login" type="redirectAction">
<param name="actionName">login</param>
<param name="namespace">/auth</param>
</result>
</global-results>
</package>
</struts>
下边就是使用定义好的全局拦截器了,在其struts的配置文件中extends这个配置文件就可以了。
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.1//EN"
"classpath:struts-2.1.dtd">
<struts>
<package name="auth" namespace="/auth" extends="interceptor-default">
<action name="index" class="authAction" method="index">
<result name="success" type="velocity">/pages/login.vm</result>
</action>
<action name="login" class="authAction" method="login">
<result name="success" type="redirect">/portal/frame.action</result>
<result name="errorMsg" type="velocity">/pages/login.vm</result>
</action>
</package>
</struts>
分享到:
相关推荐
Struts2拦截器(Interceptor) Struts2拦截器(Interceptor)
简单的拦截器例子,适合初学者学习,也是一个备忘录
详细介绍struts2 interceptor
STRUTS2:拦截器Interceptor
Struts2_interceptor_和_filter区别
struts2 Interceptor拦截器 http://whitewolf.0fees.net
NULL 博文链接:https://weizhilizhiwei.iteye.com/blog/1005210
struts2 拦截器_教程.zip
Struts2.x_Interceptor已经打包好了,解压后直接用,
Struts2拦截器是在访问某个Action或Action的某个方法,字段之前或之后实施拦截,并且Struts2拦截器是可插拔的,拦截器是AOP的一种实现.
struts1 拦截器功能的实现。struts2 中的interceptor很方便。但在struts1中没有这个功能,用这个插件很容易实现。
用注解(annotation)方式配置struts2 (webwork) 中action的拦截器(interceptor)
struts2,Interceptor struts2拦截器实例,两套实例,一套是针对单个的action配置的,另一套实例是针对全局的action配置的拦截器interceptor
拦截器是一种AOP(面向切面编程)思想的编程方式.它提供一种机制是开发者能够把相对独立的代码抽离出来,...下面这篇文章主要给大家介绍了关于Struts2拦截器Interceptor的原理与配置的相关资料,需要的朋友可以参考下。
Struts 2.1.8 学习源码内容 Struts2_01FirstDemo : 跑通第一个Struts2的实例 Struts2_02CURD : 关于Struts2的增、删、...Struts2_05Interceptor : Struts2拦截器的使用 Struts2_06FileUpload : Struts2上传文件的使用
Struts2.3.6实现自定义拦截器Interceptor http://blog.csdn.net/alanchen520/article/details/34086699
《Struts 2实战》结合实例介绍了Struts 2框架,主要内容包括Action、Result、Interceptor等框架组件,基于注解的配置选项等新特征,Struts 2插件 FreeMarker,如何从Struts 1和WebWork 2迁移到Struts 2,Ajax标签、...
org.apache.struts2.interceptor.debugging, org.apache.struts2.interceptor.validation, org.apache.struts2.servlet.interceptor, org.apache.struts2.util, org.apache.struts2.views, org.apache.struts2....
Interceptor,学习Struts 2实例,一步步教你如何实现一个示例
第1章 Struts 2:现代Web框架 2 1.1 Web应用程序:快速学习 2 1.1.1 构建Web应用程序 2 1.1.2 基础技术简介 3 1.1.3 深入研究 6 1.2 Web应用程序框架 7 1.2.1 什么是框架 7 1.2.2 为什么使用框架 8 1.3 Struts 2框架...