3

我使用以下代码在 JSF 中创建会话对象。问题是,当我尝试访问 userdet 对象时,它给了我异常,可能是因为会话超时。无论如何增加JSF中的会话超时。

            FacesContext context = FacesContext.getCurrentInstance();
            HttpSession session = (HttpSession) context.getExternalContext().getSession(true);
            session.setAttribute("userdet",user);

当我使用 servlet 时,我使用以下代码,但它也适用于 JSF 吗?

<web-app ...>
    <session-config>
        <session-timeout>20</session-timeout>
    </session-config>
</web-app>
4

2 回答 2

7

是的。JSF 应用程序的会话超时也在 web.xml 中设置。

事实上,JSF 使用 Java Servlet 来处理 http 请求和响应。

于 2013-04-06T21:47:37.817 回答
3

正如 dcernahoschi 所说,web.xml 将为 JSF 定义会话超时。

这也可以通过 HttpSession 以编程方式设置,使用 setMaxInactiveInterval 方法。

于 2013-04-07T02:11:34.110 回答