背景:附件是保存在应用服务器上,通过调用download.jsp打开附件.
上挂的HTML附件,在打开的时候,文件后面会被添加上JSP出错信息。如下所示:
java.io.IOException: Illegal to flush within a custom tag
at javax.servlet.jsp.tagext.BodyContent.flush(BodyContent.java:87)
at _oa__html._download._jspService(_download.java(Compiled Code))
at oracle.jsp.runtime.HttpJsp.service(HttpJsp.java)
at oracle.jsp.app.JspApplication.dispatchRequest(JspApplication.java(Compiled Code))
at oracle.jsp.JspServlet.doDispatch(JspServlet.java(Compiled Code))
at oracle.jsp.JspServlet.internalService(JspServlet.java(Compiled Code))
at oracle.jsp.JspServlet.service(JspServlet.java)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:588)
at org.apache.jserv.JServConnection.processRequest(JServConnection.java(Compiled Code))
at org.apache.jserv.JServConnection.run(JServConnection.java(Compiled Code))
at java.lang.Thread.run(Thread.java(Compiled Code))
处理过程:打开download.jsp,发现
OutputStream o=response.getOutputStream(); FileInputStream in=new FileInputStream(filePath + File.separator + filename);
int n;
while((n=in.read(b))!=-1){
o.write(b,0,n);
}
in.close();
out.clear();
ut = pageContext.pushBody();
红色部分改为如下语句,问题解决。
o.flush();
o.close();
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/57020/viewspace-462690/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/57020/viewspace-462690/