我遇到了 Omnifaces FullAjaxExceptionHandler ( http://showcase.omnifaces.org/exceptionhandlers/FullAjaxExceptionHandler ) 的问题。会话失效后,它不会重定向到指定的错误页面。
我的 faces-config 中有以下内容:
<factory>
<exception-handler-factory>org.omnifaces.exceptionhandler.FullAjaxExceptionHandlerFactory</exception-handler-factory>
</factory>
我的 web.xml 中有以下内容:
<error-page>
<exception-type>javax.faces.application.ViewExpiredException</exception-type>
<location>/pages/error/viewExpired.html</location>
</error-page>
在我使会话无效后,从用户的角度来看,似乎什么都没有发生。该应用程序只是“死”了。在我的控制台中,我看到以下 Ajax 请求:
- 对原始 facelet 页面的 POST 响应代码为 302
- 使用代码 200 获取登录页面(但没有任何反应,因为它是通过 Ajax 请求的)
我在 WebLogic 12c 上运行 MyFaces 2.1.10、Primefaces 3.5、Primefaces Extension 0.6.3 和 Omnifaces 1.4.1
任何人都可以帮助我朝着正确的方向前进吗?如何让 FullAjaxExeptionHandler 正常工作?
谢谢