我心中有一个疑问。我的项目之前已经成功运行。但突然之间我遇到了一个问题
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。
请告诉我哪一个是正确的。
答案 0 :(得分:2)
ServletOutputStream是为每个ServletResponse创建并与之关联的(后者又与单个请求相关联)。
不与其他请求共享。
这个错误总是会发生吗?有时候吗?您是否在浏览器窗口中出现错误?
否则,您可能只是看到连接被中断(例如,在完成报告生成之前关闭浏览器窗口时)。