How to catch a FacesFileNotFoundException?

六月ゝ 毕业季﹏ 提交于 2019-11-30 18:34:56

问题


How can I catch a

com.sun.faces.context.FacesFileNotFoundException

in a Java EE web application?

I tried it with adding the following lines in my web.xml file but I was not successful:

  ...
  <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>

回答1:


You need to specify the FQN (Full Qualified Name), not just the N as exception type.

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

Alternatively, if you already happen to use OmniFaces, register its FacesExceptionFilter and then the FacesFileNotFoundException will be handled as 404.



来源:https://stackoverflow.com/questions/5219809/how-to-catch-a-facesfilenotfoundexception

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!