dwz ajax session超时跳转登录页(struts2自定义阻碍器)
2012-11-08 16:16
453 查看
培养奇才的先决前提是公共的聪明以前的项目用的是springsecurity3.0,session超时主动跳转的登录页(这个页面可配),后来页面前端用dwz框架了,各类提交都是ajax提交,session超时再点击就会报错,我要实现的是ajax提交被阻碍,断定session是否超时,若是超时返回到登录页面。
让我们保护公允,那么我们将会获得更多的。1.定义struts2阻碍器(网上例子很多)
代码如下:
??重视:Ret.ret301("");办法封装的是dwz框架的ajax响应字符串,类型是301,例如:{"statusCode":"301", "message":"Session Timeout! Please re-sign in!"},用PrintWriter类返回给前台。
2.然后设备struts.xml
代码如下:
?声明此阻碍器,并放到客栈最底层,让其起首走这个阻碍器。
重视:调试的时辰先把session超不时候设置为1分钟,这个可以在web.xml里设置:
3.测试:
登录后,等一分钟,点击呈现登录超时,并跳转到了登录页面。
若是想session超时之后设置页面不跳转,而是弹出框登录,请在dwz的初始化页面内批改:
?如许就完成了,原创能给大师带来帮助,转载请有名出处http://shen84121062.iteye.com/blog/1166554迪斯雷利
《更多网站建设信息、网站开发资讯,敬请咨询百微信息科技,021-57700304》
让我们保护公允,那么我们将会获得更多的。1.定义struts2阻碍器(网上例子很多)
代码如下:
package com.sf.emp.utils; import javax.servlet.http.HttpServletRequest; import org.springside.modules.utils.web.struts2.Struts2Utils; import com.opensymphony.xwork2.ActionInvocation; import com.opensymphony.xwork2.interceptor.AbstractInterceptor; /** * 断定session是否超时的阻碍器 * 超时跳到登录页面 * @author gshen */ public class SessionIterceptor extends AbstractInterceptor { private static final long serialVersionUID = 7579862236766378267L; @Override public String intercept(ActionInvocation actionInvocation) throws Exception { System.out.println("into 阻碍器 。。。。。"); HttpServletRequest request = Struts2Utils.getRequest(); if ("XMLHttpRequest".equalsIgnoreCase(request.getHeader("X-Requested-With")) || request.getParameter("ajax") != null) { if(Struts2Utils.getSession() == null || LoginUserHolder.getLoginUser() == null){ Ret.ret301("恳求超时!请从头登录!"); return null; } } return actionInvocation.invoke(); } }
??重视:Ret.ret301("");办法封装的是dwz框架的ajax响应字符串,类型是301,例如:{"statusCode":"301", "message":"Session Timeout! Please re-sign in!"},用PrintWriter类返回给前台。
2.然后设备struts.xml
代码如下:
<!-- 用于CRUD Action的parent package --> <package name="crud-default" extends="convention-default"> <!-- 基于paramsPrepareParamsStack, 增长store interceptor包管actionMessage在redirect后不会丧失 --> <interceptors> <interceptor name="sessionout" class="com.sf.emp.utils.SessionIterceptor" /> <interceptor-stack name="crudStack"> <interceptor-ref name="timer"/> <interceptor-ref name="logger"/> <interceptor-ref name="store"> <param name="operationMode">AUTOMATIC</param> </interceptor-ref> <interceptor-ref name="paramsPrepareParamsStack" /> <interceptor-ref name="sessionout"/> </interceptor-stack> </interceptors> <default-interceptor-ref name="crudStack" /> </package>
?声明此阻碍器,并放到客栈最底层,让其起首走这个阻碍器。
重视:调试的时辰先把session超不时候设置为1分钟,这个可以在web.xml里设置:
<!-- session超时定义,单位为分钟 --> <session-config> <session-timeout>20</session-timeout> </session-config>
3.测试:
登录后,等一分钟,点击呈现登录超时,并跳转到了登录页面。
若是想session超时之后设置页面不跳转,而是弹出框登录,请在dwz的初始化页面内批改:
<script type="text/javascript"> ¥(function(){ DWZ.init("dwz.frag.xml", { // loginUrl:"loginsub.html", loginTitle:"登录", // 弹出登录对话框 loginUrl:"login.html", // 跳到登录页面 statusCode:{ok:200, error:300, timeout:301}, //【可选】 pageInfo:{pageNum:"page.pageNum", numPerPage:"page.numPerPage", orderField:"orderField", orderDirection:"orderDirection"}, //【可选】 debug:false, // 调试模式 【true|false】 callback:function(){ initEnv(); ¥("#themeList").theme({themeBase:"themes"}); } }); }); </script>
?如许就完成了,原创能给大师带来帮助,转载请有名出处http://shen84121062.iteye.com/blog/1166554迪斯雷利
《更多网站建设信息、网站开发资讯,敬请咨询百微信息科技,021-57700304》
相关文章推荐
- dwz ajax session超时跳转登录页(struts2自定义拦截器)
- 重写 ajax 实现 session 超时跳转到登录页面实例代码
- java ajax请求session超时跳转登录页面
- 在Ajax请求中处理登录session超时的方法
- 登录超时跳转页面失败和ajax传递到后台数据乱码
- SSO之CAS框架单点登录, session超时, ajax链接处理(转自summer Xing)
- 重写ajax方法实现异步请求session过期时跳转登录页面(转)
- jquery ajax方法调用在session超时以后如何跳转到登录页面?
- ajax提交session超时跳转页面使用全局的方法来处理
- ajax提交session超时跳转页面,全局
- strust2拦截器处理Session超时跳转登录页面
- 利用Spring自定义AOP进行Session超时自动跳转到登录页面
- 重写ajax方法实现异步请求session过期时跳转登录页
- 重写ajax方法实现异步请求session过期时跳转登录页面
- 重写ajax实现session超时跳转到登陆页面
- ajax提交session超时跳转页面使用全局的方法来处理
- webix+springmvc session超时跳转登录页面
- DWZ(JUI) 教程 Ajax请求session超时处理流程
- jquery ajax方法调用在session超时以后如何跳转到登录页面?