Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/394.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java &引用;getOutputStream();已经为此响应调用了_Java_Spring_Spring Mvc_Tomcat8 - Fatal编程技术网

Java &引用;getOutputStream();已经为此响应调用了

Java &引用;getOutputStream();已经为此响应调用了,java,spring,spring-mvc,tomcat8,Java,Spring,Spring Mvc,Tomcat8,我正在和Spring一起做一个项目,我有这个问题,我在谷歌上搜索了错误消息,我确实找到了一个解决方案,甚至所有关于这个问题的帖子 java.lang.IllegalStateException: "getOutputStream()" has already been called for this response at org.apache.catalina.connector.Response.getWriter(Response.java:578) at org.apac

我正在和Spring一起做一个项目,我有这个问题,我在谷歌上搜索了错误消息,我确实找到了一个解决方案,甚至所有关于这个问题的帖子

java.lang.IllegalStateException: "getOutputStream()" has already been called for this response
    at org.apache.catalina.connector.Response.getWriter(Response.java:578)
    at org.apache.catalina.connector.ResponseFacade.getWriter(ResponseFacade.java:212)
    at javax.servlet.ServletResponseWrapper.getWriter(ServletResponseWrapper.java:109)
    at org.apache.jasper.runtime.JspWriterImpl.initOut(JspWriterImpl.java:115)
    at org.apache.jasper.runtime.JspWriterImpl.flushBuffer(JspWriterImpl.java:108)
    at org.apache.jasper.runtime.PageContextImpl.release(PageContextImpl.java:175)
    at org.apache.jasper.runtime.JspFactoryImpl.internalReleasePageContext(JspFactoryImpl.java:120)
    at org.apache.jasper.runtime.JspFactoryImpl.releasePageContext(JspFactoryImpl.java:75)
    at org.apache.jsp.WEB_002dINF.Pages.generate_jsp._jspService(generate_jsp.java:209)
    at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
    at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:438)
    at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:396)
    at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:340)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:291)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:721)
    at org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:584)
    at org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:523)
    at org.springframework.web.servlet.view.InternalResourceView.renderMergedOutputModel(InternalResourceView.java:230)
    at org.springframework.web.servlet.view.AbstractView.render(AbstractView.java:250)
    at org.springframework.web.servlet.DispatcherServlet.render(DispatcherServlet.java:1060)
    at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:798)
    at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:716)
    at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:647)
    at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:552)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:622)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:291)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:219)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:106)
    at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:502)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:142)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:79)
    at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:617)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:88)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:518)
    at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1091)
    at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:668)
    at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1521)
    at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1478)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
    at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
    at java.lang.Thread.run(Unknown Source)
这是我的控制器:

我看到了很多这样的帖子,如:和,但没有解决方案


有人能帮忙吗?

您首先自己编写一个响应,然后返回视图的名称,从而告诉Spring它应该使用
generate.jsp
生成一个HTML页面


使方法返回
void
,而不是字符串。HTTP响应只能有一个主体:要么是文件附件,要么是HTML页面,但不能两者都有。

您首先自己编写响应,然后返回视图的名称,从而告诉Spring它应该使用
generate.jsp
生成HTML页面


使方法返回
void
,而不是字符串。HTTP响应只能有一个正文:要么是文件附件,要么是HTML页面,但不能两者都有。

@JB谢谢您的帮助。在我的例子中,当下载未能转发错误页面时,我返回了
model和view
ojbect:

@RequestMapping(value = { "/downloadfile.action" }, method = RequestMethod.POST)
public ModelAndView downloadFile(HttpServletRequest req, HttpServletResponse res, Model model)
{
  catch (Excetion e) {
    return errorPage
  }   
}

我将其更改为返回
null
@JB,感谢您的帮助。在我的例子中,当下载未能转发错误页面时,我返回了
model和view
ojbect:

@RequestMapping(value = { "/downloadfile.action" }, method = RequestMethod.POST)
public ModelAndView downloadFile(HttpServletRequest req, HttpServletResponse res, Model model)
{
  catch (Excetion e) {
    return errorPage
  }   
}

我将其更改为返回
null

,现在它会给我一条
org.apache.catalina.connector.ClientAbortException:java.io.IOException:主机中的软件中止了一个已建立的连接
错误消息,如不要关闭响应输出流。这就是容器的工作。现在它给了我一个
org.apache.catalina.connector.ClientAbortException:java.io.IOException:主机中的软件中止了一个已建立的连接
错误消息,如“不要关闭响应输出流”。这是集装箱的工作。