【发布时间】:2012-04-10 03:42:12
【问题描述】:
我对JSF的理解还很浅。
我正在阅读文档,并按照 FacesContext 的 javadoc
有 RenderResponse 和 ResponseComplete 可让您缩短生命周期。
我现在很困惑..你什么时候在实际情况下使用一个而不是另一个?
谢谢
【问题讨论】:
标签: jsf-2
我对JSF的理解还很浅。
我正在阅读文档,并按照 FacesContext 的 javadoc
有 RenderResponse 和 ResponseComplete 可让您缩短生命周期。
我现在很困惑..你什么时候在实际情况下使用一个而不是另一个?
谢谢
【问题讨论】:
标签: jsf-2
如果您想立即进入渲染响应阶段,请使用FacesContext#renderResponse()。您经常看到这与在验证阶段运行的值更改侦听器黑客攻击相结合,应该跳过更新模型值并调用操作阶段。
使用FacesContext#responseComplete() 向JSF 发出信号,表明您已经自己处理了响应,因此JSF 不需要呈现响应。您经常看到这与将文件下载写入响应的支持 bean 操作方法结合使用。这将确保 JSF 不会将文件下载附加到呈现的 HTML 的内容中,这可能会导致下载损坏或非法状态异常。
【讨论】: