我已经覆盖了OOTB错误处理程序,并且可以在404页上正常工作。
对于500错误,我在调用服务类中创建了一个Throwable.jsp,该类在内部设置了响应代码500并转发了请求。
对于404,由于资源不存在,在这种情况下,它不会对任何AEM资源进行任何调用,因此直接跳转 错误处理程序并显示错误页面(可以通过include,forward或sendRedirect-在这种情况下,所有方法都可以使用)
但是,对于500,由于存在实际的页面资源,但是仅说页面中的某个组件在后端有问题,因此会引发500错误。但是,在此之前,我们运行了一个身份验证处理程序,该处理程序实际上在页面上设置了匿名令牌和cookie,这可能就是我尝试设置500并尝试执行sendRedirect或forward的原因,在这种情况下,它显示已提交回复。
在包含include的情况下,它可以正常工作,因为它将错误页面资源包含在实际的渲染页面中,而include不会更改渲染页面的状态。
考虑用例,什么是实现方法?
答案 0 :(得分:0)
我们是在谈论作者或发布环境吗?在作者上,您可能需要禁用CQ WCM调试过滤器。