您是否知道为什么会生成此错误?
错误: -
(org.eclipse.jetty.io.eofexception:封闭)org.eclipse.jetty.io.eofexception:在org.eclipse.jetty.httpoutput.write.write.write(httpoutput.java:325)上闭合.outputstream.write(outputStream.java:75)。
导致错误的代码如下: -
try {
chain.doFilter(request, wrappedResponse);
wrappedResponse.flushBuffer();
} finally {
byte[] bytes = wrappedResponse.getCopy();
if (wrappedResponse.getContentType() != null && wrappedResponse.getContentType().contains("text/html")) {
if (bytes.length > 0) {
String out = new String(bytes);
out = out.replace(
"</head>", "Hello</head>");
response.getOutputStream().write(out.getBytes());
}
} else {
//line
response.getOutputStream().write(bytes);
}
}
这很常见。
客户在收到整个响应之前关闭了连接。
一些示例:长连接,移动连接,片状连接,甚至在完全收到响应之前关闭标签或导航的浏览器。)。
servlet在OutputStream.write()
期间将其视为EOF例外,因为该连接上没有其他内容。