`
cleaneyes
  • 浏览: 342464 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

Session超时后跳转到登录页

    博客分类:
  • Java
阅读更多

 

boolean sessionTimeOut = false;
		if (exception != null) {
			if (exception.getCause() instanceof com.chinacreator.security.SessionTimeoutExcetpion){
				//response.sendRedirect(request.getContextPath());
				//return;
				sessionTimeOut = true;
			}
}

 

<div Style="width: 100%; display: none" id="exceptionDiv">
	<img src="../include/themes/default/images/messager_error.gif" />	
<a onClick="javascript:showT();" href="#">查看详细异常</a>
	<div id='exceptions'
		style="display: none; OVERFLOW: auto; width: 100%; height: 460">
		
		<pre>
			<%
				exception.printStackTrace(new java.io.PrintWriter(out));			 	
			%>
		</pre>		
	</div>
	
</div>
 

 

 

<script type="text/javascript">
<!--
	var isTopOtherSystem = false;//最上层窗口是不是本系统
	//返回层级窗口
		function findOpenerWin(win){
				var openerWin = win.top.dialogArguments;				
				if (!openerWin){
						openerWin = win.top.opener;					
				}
				if (openerWin){
					try
					{
							openerWin.top.document.location;
					}
					catch(e)
					{					
							isTopOtherSystem = true;										  		
					}			
					if (isTopOtherSystem){
						return openerWin;
					}
					return findOpenerWin(openerWin)
				}
				else{
					try
					{
							win.top.document.location;
					}
					catch(e)
					{					
							isTopOtherSystem = true;										  		
					}			
				}
				return win;
		}	
		
		if (<%=sessionTimeOut%>){
			var openerWin = findOpenerWin(this);
			
			alert("会话超时,请重新登录!");
			//如果本窗口就是原始窗口
			if (openerWin == this){
				this.top.location.href = "<%=request.getContextPath()%>";
			}
			else{
				//关闭当前窗口
				this.close();
				//如果没有跨域	,即原始窗口不是其他系统			
				if (!isTopOtherSystem){
					openerWin.top.location.href = "<%=request.getContextPath()%>";
				}				
			}			
		}
		else{
			document.getElementById("exceptionDiv").style.display = "block";
		}
//-->
</script>
分享到:
评论

相关推荐

    Session过期后自动跳转到登录页面的实例代码

    // 页面请求,返回提示并重定向到登录页 httpResponse.sendRedirect(loginUrl); } else { // Session有效,继续请求链 chain.doFilter(request, response); } } } ``` 以上代码片段展示了如何通过过滤器实现...

    重写 ajax 实现 session 超时跳转到登录页面实例代码

    这样,当Ajax请求因Session超时导致服务器返回302时,前端能够捕获到这个错误并自动跳转到登录页面,而不是让页面保持在原来的视图中,提供良好的用户体验。 总结来说,结合后端的Session过滤器和前端的Ajax重写,...

    dwz框架实现拦截器 session超时跳转登陆页面

    dwz框架实现拦截器 session超时跳转登陆页面 DWZ框架 struts2拦截器 session超时

    JS之Session超时提示代码

    - `reduceX`函数负责更新倒计时时间,并在倒计时结束后跳转到登出页面。 #### 四、总结 本文详细解析了一个基于JavaScript实现的Session超时提示逻辑,通过监测用户的鼠标点击行为来判断用户的活跃状态,并在...

    ext session失效 页面跳转

    此外,为了提供更好的用户体验,一些应用会选择在Session即将到期时提醒用户,而不是突然跳转到登录页。这可以通过在后台定期发送心跳请求,然后在接收到Session即将过期的警告时显示一个提示框,让用户选择是否延长...

    Struts通过拦截器实现登录后跳转到登录前页面

    本话题主要探讨如何利用拦截器实现在用户成功登录后,将其重定向到登录前访问的页面。 首先,理解Struts2的拦截器工作原理。拦截器是基于Java的动态代理机制实现的,它们按照配置的顺序形成一个拦截器链,每个请求...

    J简单的springmvc包括拦截、session设置,超时跳转

    当Session超时时,通常需要将用户重定向到登录页面,提示他们重新登录。这可以通过监听器、过滤器或者在拦截器中实现。例如,在拦截器的`preHandle()`方法中,检查当前请求的Session是否有效,如果发现Session已经...

    webix+springmvc session超时跳转登录页面

    为了解决这个问题,我们需要在客户端对Webix的AJAX请求进行特殊处理,以便在检测到会话超时时能够正确跳转到登录页面。 Webix是一个JavaScript库,它提供了一套用于构建富交互式Web应用的组件和API。Webix的AJAX...

    Jsp中解决session过期跳转到登陆页面并跳出iframe框架的方法

    本文将介绍如何在JSP中设置session超时后跳转到登录页面,并解决iframe框架跳出的问题。 首先,我们考虑如何在session超时后重定向到登录页面。这可以通过使用过滤器(filter)来实现。过滤器是一种可以拦截请求和...

    thinkphp5.0-php登录超时检测功能的类

    // 提示登录超时并跳转到登录页面 alert('您的登录已超时,请重新登录'); window.location.href = 'login/index'; // 替换为实际的登录页面URL } }); } // 启动心跳 sendHeartbeat(); ``` 在后端,`/api/...

    ajax提交session超时跳转页面使用全局的方法来处理

    本文将详细介绍如何使用全局方法来处理AJAX提交时的Session超时,并跳转到特定页面。 首先,我们可以在服务器端设置一个过滤器(Filter)来检测Session的状态。在Java Web开发中,过滤器可以拦截每个HTTP请求,包括...

    Javaweb项目session超时解决方案

    解决Session超时的问题,需要对所有的/web/请求进行登录拦截,Session超时时跳转到登录页面。可以通过配置Session超时时间来实现这一点。在项目的web.xml中可以进行配置,如下: &lt;!-- 设置Session超时时间 --&gt; ...

    Asp.net 中mvc 实现超时弹窗后跳转功能

    当用户收到这个JavaScript内容后,浏览器会弹出提示并自动跳转到登录页面。 对于AJAX请求,我们需要采取不同的处理方式,因为直接返回HTML内容将导致错误的JSON响应。在这种情况下,我们可以返回一个JsonResult,将...

    跨域共享session (实现http跳转https 共享session)

    3. **定期刷新session**:设置合理的session超时时间,并在用户活动时更新session的最后活跃时间,提高安全性。 综上所述,跨域共享session涉及到多个技术层面,包括浏览器限制、服务器配置、前端处理和安全措施。...

    登录超时给出提示跳到登录页面(ajax、导入、导出)

    本文将详细介绍如何实现登录超时后给出提示并跳转到登录页面,主要涉及Ajax提交、过滤器(Filter)以及数据导入导出等相关技术。 一、登录超时验证过滤器 在Java Web应用中,我们可以使用Servlet的Filter接口来...

    详解springmvc控制登录用户session失效后跳转登录页面

    首先,我们需要在`web.xml`中配置session超时时间。在`&lt;session-config&gt;`标签内设置`&lt;session-timeout&gt;`,其值是以分钟为单位的,例如`&lt;session-timeout&gt;15&lt;/session-timeout&gt;`表示用户在15分钟无操作后,session将...

    若依 修改默认跳转页面 demo

    理解Shiro的基本概念如Subject、Realms、Session管理等,以及如何通过Shiro配置实现用户登录、授权等功能,对于修改默认跳转页面至关重要。 3. **Spring Boot**:作为若依的底层基础,Spring Boot简化了Spring应用...

    .net MVC使用Session验证用户登录

    .net MVC使用Session验证用户登录,直接输入URL的页面地址跳转到登陆页 ,必须经过用户登录授权才可以。例如输入:http://localhost:14613/Home/index 由于没有登录将直接跳转到http://localhost:14613/Account/Login...

Global site tag (gtag.js) - Google Analytics