我正在开发一个JSF Web应用程序,如果视图过期,我需要在其中显示"Session Expired"页面,但是所有其他页面都需要一个常规技术错误页面.当我触发异常时,应用程序仅进入技术错误页面.这是错误页面定义:
<error-page>
<exception-type>javax.faces.application.ViewExpiredException</exception-type>
<location>/jsps/utility/sessionExpired.jsp</location>
</error-page>
<error-page>
<exception-type>java.lang.Throwable</exception-type>
<location>/jsps/utility/technicalError.jsp</location>
</error-page>
<error-page>
<error-code>500</error-code>
<location>/jsps/utility/technicalError.jsp</location>
</error-page>
Run Code Online (Sandbox Code Playgroud)
我删除了technicalError.jsp错误页面元素,它工作正常,但当我把它们放回去时,我无法访问sessionExpired.jsp页面.如何告诉Web容器评估这些标记的顺序,以便出现正确的页面?谢谢.
jsf web.xml servlets custom-error-pages viewexpiredexception