Broken Pipe ao gravar bytes no ServletOutputStream
Ao executar este código,
ServletOutputStream out = response.getOutputStream();
out.write(bytes, 0, bytes.length);
out.flush();
out.close();
Estou recebendo essa exceção com frequência e não consigo entender por que isso está acontecendo.
Caused by: ClientAbortException: java.net.SocketException: Broken pipe
at org.apache.catalina.connector.OutputBuffer.realWriteBytes(OutputBuffer.java:358)
at org.apache.tomcat.util.buf.ByteChunk.append(ByteChunk.java:354)
at org.apache.catalina.connector.OutputBuffer.writeBytes(OutputBuffer.java:381)
at org.apache.catalina.connector.OutputBuffer.write(OutputBuffer.java:370)
at org.apache.catalina.connector.CoyoteOutputStream.write(CoyoteOutputStream.java:89)
Eu tenho um aplicativo da web em execução em um servidor linux, no JBoss 4.2.3 e no MySQL.
Como isso é causado e como posso resolvê-lo?