Ajax Session Time Out FullAjaxExceptionHandlerFactory无法使用shiro

我使用Ajax会话超时添加的代码的详细信息,如BaluC所述

faces-config.xml中

 org.omnifaces.exceptionhandler.FullAjaxExceptionHandlerFactory  

在web.xml

  javax.faces.application.ViewExpiredException /expired.xhtml  

应用-config.xml中

                [main] user.loginUrl = /login.xhtml [users] admin = password [urls] /login.xhtml = user /css/**=anon /images/**=anon /emailimages/**=anon /login=anon /test=anon /sso=anon /ssologin=anon /**=authc      <!--  -->       <!--  -->  <!--  -->  <!--    -->      <!--    -->  <!--  -->    <!--  -->       

添加了从BaluC博客复制的类文件FacesAjaxAwareUserFilter **代码**

Jar文件已添加

 omniface-1.7.jar 

在.xhtml文件中添加了此内容

 xmlns:o="http://omnifaces.org/ui" xmlns:of="http://omnifaces.org/functions" 

想出了一个警告

 NLS missing message: CANNOT_FIND_FACELET_TAGLIB in: org.eclipse.jst.jsf.core.validation.internal.facelet.messages 

当前状态:

没有找到响应,页面不会重定向会话超时ajax调用。

使用此配置解决了问题。

faces-config.xml中

  org.omnifaces.exceptionhandler.FullAjaxExceptionHandlerFactory  

通过添加FacesAjaxAwareUserFilter使Shiro JSF感知ajax

util:map

应用-config.xml中

       

web.xml中

将错误重定向页面添加到web.xml

  500 /error.xhtml  

我的错误。

恰好有一个SessionTimeoutFilter用于重定向非Ajax Timeout事件,由于某些个人原因,它们不能和平地工作,我仍然不知道是什么让人生气,在一起时。 非常感谢任何帮助。

这是我删除的代码

  SessionTimeoutFilter com.xxx.SessionTimeoutFilter  SessionTimeoutRedirect /login    SessionTimeoutFilter Faces Servlet