ClientAbortException .. socket write error 问题
2014-11-28 10:39
375 查看
今天在开发web pdf打印时,servlet往客户端写数据时,遇到这么个问题:
往socket写PDF数据时,PDF数据有问题。(不向socket写,改成写文件,文件内容正常,排除。)
页面请求PDF时是用layer.js的iframe弹窗方式,勾选多行时url参数太长。(改为弹窗后执行一段js提交form,参数放到form中,还是报错,排除。)
ie打开PDF流有问题。(改为下载文件形式,问题依旧存在。排除。)
最后,发现就是问题2.导致的,原来是把勾选的数据的所有列序列成json后后台传,改为只传id列,数据减少了很多,没问题了,但是明明被我排除了的,不明白,靠。
Caused by: ClientAbortException: java.net.SocketException: Software caused connection abort: socket write error at org.apache.catalina.connector.OutputBuffer.realWriteBytes(OutputBuffer.java:406) at org.apache.tomcat.util.buf.ByteChunk.flushBuffer(ByteChunk.java:480) at org.apache.tomcat.util.buf.ByteChunk.append(ByteChunk.java:310) at org.apache.catalina.connector.OutputBuffer.writeByte(OutputBuffer.java:450) at org.apache.catalina.connector.CoyoteOutputStream.write(CoyoteOutputStream.java:77) at com.cnpc.print.PrintServlet.doPost(PrintServlet.java:83) ... 25 more Caused by: java.net.SocketException: Software caused connection abort: socket write error at java.net.SocketOutputStream.socketWrite0(Native Method) at java.net.SocketOutputStream.socketWrite(SocketOutputStream.java:113) at java.net.SocketOutputStream.write(SocketOutputStream.java:159) at org.apache.coyote.http11.InternalOutputBuffer.realWriteBytes(InternalOutputBuffer.java:215) at org.apache.tomcat.util.buf.ByteChunk.flushBuffer(ByteChunk.java:480) at org.apache.tomcat.util.buf.ByteChunk.append(ByteChunk.java:366) at org.apache.coyote.http11.InternalOutputBuffer$OutputStreamOutputBuffer.doWrite(InternalOutputBuffer.java:240) at org.apache.coyote.http11.filters.ChunkedOutputFilter.doWrite(ChunkedOutputFilter.java:119) at org.apache.coyote.http11.AbstractOutputBuffer.doWrite(AbstractOutputBuffer.java:192) at org.apache.coyote.Response.doWrite(Response.java:517) at org.apache.catalina.connector.OutputBuffer.realWriteBytes(OutputBuffer.java:401) ... 30 more现象是,勾选6行数据,点打印就没有响应了,把窗口关掉时,服务器后台报上面的错,勾5行数据就没问题,怀疑几个地方可能存在问题:
往socket写PDF数据时,PDF数据有问题。(不向socket写,改成写文件,文件内容正常,排除。)
页面请求PDF时是用layer.js的iframe弹窗方式,勾选多行时url参数太长。(改为弹窗后执行一段js提交form,参数放到form中,还是报错,排除。)
ie打开PDF流有问题。(改为下载文件形式,问题依旧存在。排除。)
最后,发现就是问题2.导致的,原来是把勾选的数据的所有列序列成json后后台传,改为只传id列,数据减少了很多,没问题了,但是明明被我排除了的,不明白,靠。
相关文章推荐
- spring+ibatis问题1—— 程序报错:java.sql.SQLException: Io 异常: Connection reset by peer, socket write error; ”或“java.sql.SQLException 关闭的连接”异常
- Tomca7热部署问题:Connection reset by peer: socket write error
- 异常问题Software caused connection abort: socket write error
- Log4j输出到Logstash Software caused connection abort: socket write error问题
- Software caused connection abort: socket write error 问题原因推测
- 棘手问题java.net.SocketException: Connection reset by peer: socket write error未解决
- connection reset by peer, socket write error问题排查
- 解决Java使用c3p0连接池连接mysql数据库出现MESSAGE: Software caused connection abort: socket write error的问题
- Connection reset by peer: socket write error 和Timestamp format must be yyyy-mm-dd hh:mm:ss.fffffffff 的一种解决办法
- java.net.SocketException: Connection reset by peer: socket write error
- Connection reset by peer: socket write error
- excel Connection reset by peer: socket write error错误原因之一
- "ClientAbortException: java.net.SocketException: Connection reset by peer: socket write error"异常出现的原因
- 一种产生socket write error的原因(sitemesh 相关)
- java.net.SocketException: Connection reset by peer: socket write error 错误
- Connection reset by peer: socket write error错误分析及解决
- weblogic的socket error问题
- excel Connection reset by peer: socket write error错误原因之一
- Software caused connection abort: socket write error
- JDBC连接SQLServer时出现错误Error establishing socket.的解决方法[端口问题引起]