【问题标题】:Redirecting to custom error page with web.xml and pretty-faces使用 web.xml 和漂亮面孔重定向到自定义错误页面
【发布时间】:2015-02-15 23:10:05
【问题描述】:

我遇到了一个有趣的问题,即在使用 PrettyFaces 时向用户显示自定义错误页面。

所以,在我的 Web 应用程序中,我想展示一个带有 kitty 和一些轻松词语的可爱页面,以防我的应用程序“提供”任何内部意外异常。 这是我web.xml的一部分:

<error-page>
  <error-code>404</error-code>
  <location>/pages/error/404.xhtml</location>
</error-page>
<error-page>
  <error-code>500</error-code>
  <location>/pages/error/500.xhtml</location>
</location>

我也试过一般异常页面(没有错误代码,只指定了location标签);它也不起作用。而不是显示可爱的小猫,丑陋的错误 500 和堆栈跟踪传入。

另一件事是我正在使用漂亮的面孔。所以,我尝试了这个技巧:
1)我的一部分web.xml

<error-page>
  <error-code>500</error-code>
  <location>/500</location>
</location>

2) 我的pretty-config.xml的一部分

<url-mapping id="404">
  <pattern value="/500" />
  <view-id value="/pages/error/500.xhtml" />
</url-mapping>

这个技巧更好,但仍然不能完全达到我想要的效果。现在它显示简单的空白白页,什么都没有;在浏览器控制台中,我可以看到错误代码为 404 的请求 URL(但 500.xhtml 文件正确存在,我可以在组装的 .ear 中看到它)。

【问题讨论】:

  • 您使用的是什么版本的 PrettyFaces?
  • @Lincoln PrettyFaces 版本是 2.0.11 Final
  • 错误页面首先不应该是幂等的。您最好退后一步并修复您的自定义异常处理程序,使其与默认容器完全相同:转发到它而不是重定向到它。

标签: jsf custom-error-pages prettyfaces


【解决方案1】:

如果没有看到您的申请,我很难知道到底发生了什么。这可能有多种原因(例如,错误页面本身的问题导致容器隐藏的后续异常,因为它已经处于错误状态。)

我会检查以确保在访问 500 页面时没有创建第二个异常,因为对于具有任何类型功能的异常页面来说,这是一个常见问题。

如果您需要更多帮助,请随时在 http://ocpsoft.org/support/ 上打开一个线程,上传一个重现此问题的示例应用,我们可以进行更深入的了解。

【讨论】:

    猜你喜欢
    • 2012-10-18
    • 2012-06-13
    • 2018-04-18
    • 2017-10-27
    • 1970-01-01
    • 2018-04-29
    • 1970-01-01
    • 2014-07-23
    • 2022-10-12
    相关资源
    最近更新 更多