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