java - session 超时未发生

标签 java session servlets web.xml

识别 session 超时并重定向它的步骤是什么,我尝试在 web.xml 中将 session 超时设置为 1 分钟,这是否会使 session 超时?

用于在过滤器中重定向:

if (request.getRequestedSessionId() != null   && !request.isRequestedSessionIdValid()) 
        response.sendRedirect(request.getContextPath() + "/login.html");
                    return;
    }
    else {
        response.setHeader("Cache-Control", "no-cache, no-store, must-       revalidate"); // HTTP 1.1.
        response.setHeader("Pragma", "no-cache"); // HTTP 1.0.
        response.setDateHeader("Expires", 0);
        filterChain.doFilter(servletRequest, servletResponse);
    }  

但它没有重定向到登录页面,我在这里缺少什么?

还需要澄清的是:web.xml 中的 url-pattern 标记是否应该具有重定向页面地址?

<filter-mapping>
    <filter-name>SessionTimeoutCookieFilter</filter-name>
    <url-pattern>login.html</url-pattern>
</filter-mapping>

请对此提出任何建议......

最佳答案

如果您使用的是 Apache Tomcat,请在 web.xml 中尝试此操作

         <session-config>
            <session-timeout>30</session-timeout>
        </session-config>

关于java - session 超时未发生,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23149203/

相关文章:

java - Apache POI : Retrieve page number from XWPFParagraph instance?

php - 使用 Wordpress wp_query 搜索存储在数组中的多个变量的出现

java - Spring MVC 调度程序 servlet.xml 错误

Java ActionListener 未按预期工作

java - mongodb根据父文档的搜索结果选择子文档

java - parse.com 查询到 sqlite 查询

php - 在 Codeigniter 中重定向后 session 丢失

session - 从远程 session 获取完整的堆栈跟踪

java - 你需要了解 JSF 或 Spring 中的 JSTL

java - Java EE 应用程序的 session 处理