1

出于某种原因我的

<error-page>
    <error-code>404</error-code>
    <location>/error/error.html</location>
</error-page>

当我尝试访问以下路径时,在tomcat\conf\web.xml中定义的内容被忽略

WebAppName/javax.faces.resource/anyFileName.jsf

我知道javax.faces.resource前缀和.jsf后缀结合在一起的原因......

因为如果我更改其中一个,我会得到自定义错误页面

我知道这不是一个常见的选择路径,但我仍然想知道如何让它使用我的自定义error-page

顺便说一句,我正在使用myfaces 2.0.11


一种方法可能是

1)创建自定义过滤器

2) 获取请求资源的路径

3)检查路径是否存在file.exists()

4)如果不存在调用,response.sendError(404, "Cannot find " + path);否则调用chain.doFilter(req, res);

但我根本不喜欢这种方法,这是一个OverKill IMO ......

所以还是想知道有没有更好的方法...

4

0 回答 0