我使用JSF 2.1.7 Mojarra。
如果我在浏览器的地址栏中写了一个不正确的URL(一个不存在的页面),为了测试我被重定向到我的自定义错误页面的http错误404,我得到的是以下内容异常(错误500):
com.sun.faces.context.FacesFileNotFoundException
我发现这是一个错误。请参阅Jira中的以下问题:
http://java.net/jira/browse/JAVASERVERFACES-1762
它已经修复(修改一些JSF类的代码)。参见:
http://java.net/projects/mojarra/lists/commits/archive/2010-12/message/18
但我没有找到任何补丁。
我在哪里可以获得修复此错误的补丁?有可能得到或者我必须自己覆盖JSF代码吗?
非常感谢。
答案 0 :(得分:3)
我认为JSF试图通过此异常独立于Servlets / HTTP。我只是在过滤器中捕获它:
try {
chain.doFilter(request, response);
} catch (FacesFileNotFoundException e) {
response.sendError(404, e.getMessage());
}