3

我怎样才能抓住一个

com.sun.faces.context.FacesFileNotFoundException

在 Java EE Web 应用程序中?

我尝试在 web.xml 文件中添加以下行,但没有成功:

  ...
  <error-page>
    <error-code>404</error-code>
    <location>/404.jsf</location>
  </error-page>
  <error-page>
    <error-code>500</error-code>
    <location>/404.jsf</location>
  </error-page>
  <error-page>
    <exception-type>FacesFileNotFoundException</exception-type>
    <location>/404.jsf</location>
  </error-page>
  <error-page>
    <exception-type>FileNotFoundException</exception-type>
    <location>/404.jsf</location>
  </error-page>
  <error-page>
    <exception-type>FailingHttpStatusCodeException</exception-type>
    <location>/404.jsf</location>
  </error-page>
</web-app>
4

1 回答 1

6

您需要指定 FQN(全限定名),而不仅仅是 N 作为异常类型。

<exception-type>com.sun.faces.context.FacesFileNotFoundException</exception-type>

或者,如果您已经碰巧使用了 OmniFaces,请注册它FacesExceptionFilter,然后FacesFileNotFoundException将被处理为 404。

于 2011-03-07T13:24:32.920 回答