如何在web.xml

时间:2017-05-05 20:50:38

标签: jsf-2 tomcat7 url-redirection jaas

只要凭据已过期,我就需要重定向到changePassword页面。 我的登录组件在检测到凭据已过期时抛出CredentialsExpiredException。到目前为止一切都很好。

我想在web.xml中配置重定向,如下所示:

<error-page>
  <exception-type> 
    javax.security.auth.login.CredentialExpiredException
  </exception-type>
  <location>/protected/template/passwordChange.xhtml</location>
</error-page>

但重定向不会发生。相反,如果我尝试使用ViewExpiredException,它将起作用:

<error-page>
    <exception-type>
javax.faces.application.ViewExpiredException
</exception-type>
    <location>/protected/template/passwordChange.xhtml</location>
</error-page>

问题在于,从阻止帐户到无效凭据的所有内容都会生成ViewExpiredException,因此它不适用于我需要的内容。

有人可以提供一些指示,了解如何为登录组件中抛出的CredentialExpiredException实现此重定向?

这是我的设置:   - JAAS   - Tomcat7,Java7,JSF2

我知道还有其他选项可以实现这一点,例如使用过滤器。我认为这将是解决问题的一种更清洁的方式。

提前致谢!

0 个答案:

没有答案