0
は、私が持っている:tomcatの応答オブジェクトの内容を確認する方法は?私のGrailsアプリケーションで
response.outputStream << resultBytes; //result bytes contains my data
これはレスポンスヘッダがあるcsv形式でのコンテンツダウンロード:
["Content-disposition": "attachment; filename=\"${fileName}\""]
は、開発ではenvironementデータは罰金が、本番のような他の環境でダウンロードされるが、同じ量のデータがダウンロードされると、壊れたパイプ例外が発生します。私はこれが何らかの種類のTomcatの問題だと思っています(場合によってはバッファやストリームをフラッシュできませんでした)。問題の原因を正確にはわかりません。助けてください。
例外は次のとおりです。
2017-07-13 14:51:59,751 [http-nio-8453-exec-16] ERROR StackTrace Full Stack Trace:
org.apache.catalina.connector.ClientAbortException: java.io.IOException: Broken pipe
at org.apache.catalina.connector.OutputBuffer.realWriteBytes(OutputBuffer.java:393)
at org.apache.tomcat.util.buf.ByteChunk.append(ByteChunk.java:344)
at org.apache.catalina.connector.OutputBuffer.writeBytes(OutputBuffer.java:418)
at org.apache.catalina.connector.OutputBuffer.write(OutputBuffer.java:406)
at org.apache.catalina.connector.CoyoteOutputStream.write(CoyoteOutputStream.java:97)
at org.apache.catalina.connector.CoyoteOutputStream.write(CoyoteOutputStream.java:90)
at org.codehaus.groovy.runtime.IOGroovyMethods.leftShift(IOGroovyMethods.java:256)
at org.codehaus.groovy.runtime.dgm$839.invoke(Unknown Source)
at org.codehaus.groovy.runtime.callsite.PojoMetaMethodSite$PojoMetaMethodSiteNoUnwrapNoCoerce.invoke(PojoMetaMethodSite.java:274)
at org.codehaus.groovy.runtime.callsite.PojoMetaMethodSite.call(PojoMetaMethodSite.java:56)
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:125)
at com.deerwalk.exs.SearchReportDirectController.doSearchExport(SearchReportDirectController.groovy:40)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:497)
at org.codehaus.groovy.runtime.callsite.PogoMetaMethodSite$PogoCachedMethodSiteNoUnwrapNoCoerce.invoke(PogoMetaMethodSite.java:210)
at org.codehaus.groovy.runtime.callsite.PogoMetaMethodSite.callCurrent(PogoMetaMethodSite.java:59)
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(AbstractCallSite.java:174)
at com.deerwalk.exs.AbstractReportController.doCsvExport(AbstractReportController.groovy:36)
at com.deerwalk.exs.AbstractReportController.doCsvExport(AbstractReportController.groovy)
at org.grails.core.DefaultGrailsControllerClass$MethodHandleInvoker.invoke(DefaultGrailsControllerClass.java:222)
at org.grails.core.DefaultGrailsControllerClass.invoke(DefaultGrailsControllerClass.java:187)
at org.grails.web.mapping.mvc.UrlMappingsInfoHandlerAdapter.handle(UrlMappingsInfoHandlerAdapter.groovy:88)
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:959)
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:893)
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:968)
at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:870)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:648)
at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:844)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
【使い方の可能性のある重複修正するにはjava.net.SocketException:壊れたパイプ?](https://stackoverflow.com/questions/2309561/how-to-fix-java-net-socketexception-broken-pipe) –
私は推測するユーザーダウンロードが完了する前にブラウザを閉じて、パイプの破損を壊した –