当前位置: 首页 > 知识库问答 >
问题:

呈现视图时出错:java.lang.IllegalStateException:已为此响应调用getOutputStream()

史修明
2023-03-14
 SEVERE: Error Rendering View[/WebPages/SearchPages/index.xhtml]
    java.lang.IllegalStateException: PWC3991: getOutputStream() has already been called for this response

我在创建outputstream对象时出现了这个错误

HTTPServletResponse response = (HTTPServletResponse)FacesContext.getCurrentInstance().getExternalContext().getResponse();

ServletOutputStream out = response.getOutputStream();

我的创作或其他原因有什么问题吗?任何帮助都是非常值得赞赏的

共有1个答案

鞠宏恺
2023-03-14

您需要告诉JSF您自己已经完成了HTTP响应,否则在action方法完成后,JSF仍将继续执行默认的RENDER_RESPONSE作业,这将导致这个异常,因为响应已经提交。

您可以通过在action方法中调用FacesContext#responsecomplete()来实现这一点。

公共抽象void responseComplete()

    null
 类似资料: