Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/oop/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jsf Java ee会话/会话/视图超时重定向_Jsf_Jakarta Ee_Cdi_Session Timeout_Viewexpiredexception - Fatal编程技术网

Jsf Java ee会话/会话/视图超时重定向

Jsf Java ee会话/会话/视图超时重定向,jsf,jakarta-ee,cdi,session-timeout,viewexpiredexception,Jsf,Jakarta Ee,Cdi,Session Timeout,Viewexpiredexception,我的环境是:NetBeans7.2.1、GlassFish3.1、JSF2和Weld 1.1.0 在会话/对话/视图超时的情况下,我试图重定向到一个错误页面 据我所知,有很多选择: 在web.xml内部使用,但由于某种原因,当我使用location with error.xhtml页面时,它不起作用,只处理了一个关于这个问题的servlet问题 使用内部faces-config.xml,它将使用CustomExceptionHandler,如示例中所示 使用@WebFilter,如示例中所示 我

我的环境是:NetBeans7.2.1、GlassFish3.1、JSF2和Weld 1.1.0

在会话/对话/视图超时的情况下,我试图重定向到一个错误页面

据我所知,有很多选择:

在web.xml内部使用,但由于某种原因,当我使用location with error.xhtml页面时,它不起作用,只处理了一个关于这个问题的servlet问题

使用内部faces-config.xml,它将使用CustomExceptionHandler,如示例中所示

使用@WebFilter,如示例中所示

我的主要问题是,在重定向到error.xhtml页面后,我想禁用返回到以前的页面。因此,即使用户点击后退按钮,他仍然会被重定向到错误页面

当出现异常时,我可以重定向到错误页面,但无法清除缓存,因此当用户返回时,他仍然可以看到上一页的内容

我不完全理解上述3个选项之间的区别,以及每个选项的具体作用

有人能解释一下吗

两者之间的区别是什么

NavigationHandler nav=fc.getApplication.getNavigationHandler; nav.handleNavigationfc,null,/error; facesContext.renderResponse

HttpServletResponseresponse.sendRedirectyourCustomJSF.jsf

如何通过重定向和清除缓存来处理这些异常,以便用户无法看到上一页


提前感谢。

您可以将此用于处理过期的会话/视图:

<error-page>
    <exception-type>javax.faces.application.ViewExpiredException</exception-type>
    <location>/index.jsf</location>
</error-page>
我的主要问题是,在重定向到error.xhtml页面后,我想禁用返回到以前的页面。因此,即使用户点击后退按钮,他仍然会被重定向到错误页面

为此,请使用筛选器不缓存页面,而是将请求发送到服务器 请参见此以获取过滤器的代码