我正在JBoss AS 5中运行一个Web应用程序。我还有一个Servlet过滤器,该过滤器拦截对服务器的所有请求。现在,如果会话已过期,我想将用户重定向到登录页面。我需要在过滤器中执行“ isSessionExpired()”检查,并需要相应地重定向用户。我该怎么做?我在web.xml中设置会话时间限制,如下所示:<session-config> <session-timeout>15</session-timeout></session-config>
3 回答
慕容708150
TA贡献1831条经验 获得超4个赞
您可以使用过滤器并进行以下测试:
HttpSession session = request.getSession(false);// don't create if it doesn't exist
if(session != null && !session.isNew()) {
chain.doFilter(request, response);
} else {
response.sendRedirect("/login.jsp");
}
上面的代码未经测试。
但是,这不是最广泛的解决方案。你应该还测试了一些特定领域的对象或标志是在会话中可用假设,因为会话不是新用户意有所指登录之前,偏执!
添加回答
举报
0/150
提交
取消