- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
在执行这段代码时,
ServletOutputStream out = response.getOutputStream();
out.write(bytes, 0, bytes.length);
out.flush();
out.close();
我经常收到此异常,但我不明白为什么会这样。
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)
我有一个在 JBoss 4.2.3 和 MySQL 下的 Linux 服务器上运行的 Web 应用程序。
这是怎么引起的,我该如何解决?
最佳答案
这通常是由于客户端断开连接。客户端断开连接的原因可能有多种(超时、浏览器关闭等)。此外,作为一般做法,如果您没有打开流,则不要关闭。更多关于在此处关闭流的信息 Should I close the servlet outputstream? .
关于java - 在 ServletOutputStream 中写入字节时管道损坏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12206754/
我正在尝试将一个大的 XML 文件(超过 1.5M)写入 ServletOutputStream,这需要很长时间,接近 7 分钟左右甚至更长。 我正在做的事情如下 - 1. SOAPMessage s
我有一个要求,从 Web 服务(例如:List)获取多个图像,并且必须将这些图像写入 ServletOutputStream。 当我单击“VIEW”链接时,它会调用 servlet,而该 servle
我想压缩动态创建的内容并直接写入ServletOutputStream,而不是在压缩前将其另存为服务器上的文件。 例如,我创建了一个 Excel 工作簿和一个包含带有 SQL 模板的字符串的 Stri
找了很多都没有解决这个问题。我正在用 iText 生成 PDF 文件。如果我使用 FileOutputStream,一切都很好,但是当我尝试使用 ServletOutputStream 时,图像不会出
我遇到了一个无法一致重现的问题。我读取一个文件并将该文件的内容写入 ServletOutputStream。 byte[] buff = new byt
对于内容类型“text/plain”,如果我必须发送大量数据,以下哪个更有效。 ServletOutputStream sos = response.getOutputStream(); sos.wr
这是我在刷新 ServletOutputStream 时遇到的异常。它不会出现在每个请求上,所以我无法重现它。 java.lang.NullPointerException at org.ap
我想知道在创建将内容写入 ServletOutputStream 的 byte[] 时是否有特定规则或最佳实践? byte[] buffer = new byte[1024]; int r
我正在使用 Java 中的一些现有代码开发 Web 服务。 Web 服务使用 ServletResponse 接口(interface)来生成响应。当前代码首先创建 ServletResponse 对
我正在尝试读取 FreemarkerView 渲染的结果: View view = viewResolver.resolveViewName(viewName, locale); view.rende
在执行这段代码时, ServletOutputStream out = response.getOutputStream(); out.write(bytes, 0, bytes.length); o
ServletOutputStream output = response.getOutputStream(); output.write(byte[]); 将 File 写入 javax.servl
我们在服务器端尝试了以下方法, 将 2.5 MB 的文件内容从 MS-Amazon 服务器写入 Java 客户端代码、Android 客户端代码和 IOS 客户端代码大约需要 55 秒 服务器示例代码
我有一个 HttpServlet,我正在尝试为其编写测试并模拟了 ServletOutputStream:ServletOutputStream outputStream = mock(Servlet
我知道之前许多问题的重点是关闭或不关闭 ServletOutputStream,如下所示:Should I close the servlet outputstream?或此处:Should one
据我所知,这属于“你不能那样做”的范畴。我即将重新考虑我的解决方案并解决它,但我认为在这里提问至少值得一试。 我的 JSP/Spring/Struts Servlet 生成报告,将它们写入 PDF,并
我希望这个问题符合 Stack Overflow 问题指南的“软件算法”。 :) 我有一个 Java Web 应用程序,作为服务 Servlet 请求的一部分,它会生成日志记录事件,这些事件会调用持久
我有一个疑问。我有一个项目之前运行成功。但突然间我遇到了下面给出的一个问题 java.lang.InternalError: java.io.IOException: Stream closed at
我正在编写一个动态生成 GIF 文件的端点。我会从头开始。 我有一个名为 Function 的类(class)它像一个抽象类一样工作,我有几个类,在这个例子中 AddFunction ,代表一小块功能
我们有一些生产代码可以有效地执行此代码的操作: http://java.sun.com/products/java-media/2D/reference/faqs/index.html#Q_Can_I
我是一名优秀的程序员,十分优秀!