servlet共享相同的servletoutputstream对象吗?

时间:2015-01-23 09:16:12

标签: 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)

当我在响应中发送outputstream时,我的jasper报告中出现错误

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

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

1 个答案:

答案 0 :(得分:2)

ServletOutputStream是为每个ServletResponse创建并与之关联的(后者又与单个请求相关联)。

不与其他请求共享。

这个错误总是会发生吗?有时候吗?您是否在浏览器窗口中出现错误?

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