java - servlet 是否共享同一个 servletoutputstream 对象?

标签 java tomcat servlets servlet-3.0

我有一个疑问。我有一个项目之前运行成功。但突然间我遇到了下面给出的一个问题

java.lang.InternalError: java.io.IOException: Stream closed
at java.text.BreakIterator.createBreakInstance(BreakIterator.java:596)
at java.text.BreakIterator.getBreakInstance(BreakIterator.java:541)
at java.text.BreakIterator.getLineInstance(BreakIterator.java:468)
at java.text.BreakIterator.getLineInstance(BreakIterator.java:455)
at javax.swing.text.Utilities.getBreakLocation(Utilities.java:427)

当我发送输出流作为响应时,我的 jasper 报告出现错误

我想知道 1 tomcat 是否为一个应用程序共享通用的 servletOutputStream? 2 tomcat 是否为一个 servlet 共享一个 ServletOutputStream? 3 据我所知,容器为每个响应创建新的 ServletOutputStream。

请告诉我哪一个是正确的。

最佳答案

ServletOutputStream 是为每个单独的 ServletResponse 创建并关联的(它又与单个请求关联)。

它不与其他请求共享。

这个错误是否总是发生?只是有时吗?您真的在浏览器窗口中收到错误消息吗?

否则,您可能只会看到连接被中断(例如,当浏览器窗口在报告生成完成之前关闭时)。

关于java - servlet 是否共享同一个 servletoutputstream 对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28106489/

相关文章:

java - 如何使用 JAVA servlet 捕获请求

java.lang.ClassNotFoundException : com. jweb.beans.News

java - 如何使用Servlet和Ajax?

java - 如何在点击时翻转 android 对话框?

java - 开发模式服务器中的 GWT XML 配置解析错误

java - 如何在java中打开受密码保护的docx文件?

java - 部署 tomcat webapp 时出错 | java.lang.IllegalStateException : ContainerBase. 添加子

tomcat - 将 Play Framework 中实现的 Web 服务部署到 Tomcat 上的影响

java - 最接近Java中网页重新加载的等价物

java - 如何将动态 JSON 属性映射到固定 POJO 字段