DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG· RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT <http://issues.apache.org/bugzilla/show_bug.cgi?id=18233>. ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND· INSERTED IN THE BUG DATABASE.
http://issues.apache.org/bugzilla/show_bug.cgi?id=18233 [EMAIL PROTECTED] changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |[EMAIL PROTECTED] OS/Version| |AIX Version|4.1.18 |4.0.1 Final ------- Additional Comments From [EMAIL PROTECTED] 2004-11-30 19:29 ------- (In reply to comment #0) > Whilst printing a String to the ServletOuputStream, if the user presses > the 'stop' button on their browser then an IOException is thrown. It is > standard practice to try and close resources when an error occurs but when I > try to close the stream I get another IOException (Connection reset by peer) > because the close() method is trying to flush the stream. > Now, either it is standard practice to not call close() or to ignore the > exception but either of these means that the client is not confident that all > the resources around the stream were cleaned up. I consider this a usability > bug and possibly a functional bug, I don't really have time to investigate in > the code any further to see whether the stream not being cleaned up causes any > problems. > Below is the stack trace that is thrown when trying to call close() on the > ServletOuputStream using Tomcat 4.1.18, Java 1.4.1_02 under Windows 2K SP3: > java.net.SocketException: Connection reset by peer: socket write error > at java.net.SocketOutputStream.socketWrite0(Native Method) > at java.net.SocketOutputStream.socketWrite (SocketOutputStream.java:92) > at java.net.SocketOutputStream.write(SocketOutputStream.java:136) > at > org.apache.coyote.http11.InternalOutputBuffer$OutputStreamOutputBuffer.doWrite > (InternalOutputBuffer.java:668) > at org.apache.coyote.http11.filters.ChunkedOutputFilter.doWrite > (ChunkedOutputFilter.java:166) > at org.apache.coyote.http11.InternalOutputBuffer.doWrite > (InternalOutputBuffer.java:523) > at org.apache.coyote.Response.doWrite(Response.java:524) > at org.apache.coyote.tomcat4.OutputBuffer.realWriteBytes > (OutputBuffer.java:384) > at org.apache.tomcat.util.buf.ByteChunk.flushBuffer (ByteChunk.java:360) > at org.apache.tomcat.util.buf.ByteChunk.append(ByteChunk.java:338) > at org.apache.tomcat.util.buf.IntermediateOutputStream.write > (C2BConverter.java:273) > at sun.nio.cs.StreamEncoder$CharsetSE.writeBytes (StreamEncoder.java:334) > at sun.nio.cs.StreamEncoder$CharsetSE.implFlushBuffer > (StreamEncoder.java:402) > at sun.nio.cs.StreamEncoder$CharsetSE.implFlush (StreamEncoder.java:406) > at sun.nio.cs.StreamEncoder.flush(StreamEncoder.java:150) > at java.io.OutputStreamWriter.flush(OutputStreamWriter.java:213) > at org.apache.tomcat.util.buf.WriteConvertor.flush > (C2BConverter.java:222) > at org.apache.tomcat.util.buf.C2BConverter.flushBuffer > (C2BConverter.java:165) > at org.apache.coyote.tomcat4.OutputBuffer.realWriteChars > (OutputBuffer.java:580) > at org.apache.tomcat.util.buf.CharChunk.flushBuffer (CharChunk.java:388) > at org.apache.coyote.tomcat4.OutputBuffer.close (OutputBuffer.java:313) > at org.apache.coyote.tomcat4.CoyoteOutputStream.close > (CoyoteOutputStream.java:125) -- Configure bugmail: http://issues.apache.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee. --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]