源码网,源码论坛,源码之家,商业源码,游戏源码下载,discuz插件,棋牌源码下载,精品源码论坛

 找回密码
 立即注册
查看: 319|回复: 12

[JSP编程] JSP上传图片产生 java.io.IOException: Stream closed异常解决方法

[复制链接]

7万

主题

861

回帖

32万

积分

论坛元老

Rank: 8Rank: 8

积分
329525
发表于 2012-12-31 15:53:20 | 显示全部楼层 |阅读模式
在做jsp上传图片时,把java代码直接改成 jsp,上传时产生异常,很是疑惑,于是搜索整理了一下解决方法,需要了解的朋友可以参考下 在做 jsp 上传图片时,把 java 代码直接改成 jsp,上传时产生 如下异常:
2012-12-31 8:59:21 org.apache.catalina.core.StandardWrapperValve invoke
严重: Servlet.service() for servlet jsp threw exception
java.io.IOException: Stream closed
...
百思不得其解,翻出 jsp 转成 servlet 后的代码。如下(很很的醒目一下):
复制代码 代码如下:
...
}catch(Exception e){
e.printStackTrace();
}finally{
out.flush(); //
out.close();// 此处为源始代码
DBHelper.freeConnection(connection);
}
out.write('\r'); // 如上我已经关了 out 对象,但此处还在使用,所以便产生了如开始所描述的异常
out.write('\n');
} catch (Throwable t) {
if (!(t instanceof SkipPageException)){
out = _jspx_out;
if (out != null && out.getBufferSize() != 0)
try { out.clearBuffer(); } catch (java.io.IOException e) {}
if (_jspx_page_context != null) _jspx_page_context.handlePageException(t);
}
} finally {
_jspxFactory.releasePageContext(_jspx_page_context);
}
...

解决办法:把程序中加红加粗的代码改成:
复制代码 代码如下:
out.flush() ;
out = pageContext.pushBody(); // 关于该段程序的解释,doc中已经说的很清楚。

如下:(要特别注意一下flush()和clear()方法的区别,因为需求不同程序是不同的)
abstract void flush()
Flush the stream.

abstract void clear()
Clear the contents of the buffer.


PageContext 实现了抽象类 JspContext ,方法:pushBody(), 保存当前的out对象
BodyContent pushBody()
Return a new BodyContent object, save the current "out" JspWriter, and update the value of the "out" attribute in the page scope attribute namespace of the PageContext.

public abstract class BodyContent
extends JspWriter

out 内置对象
回复

使用道具 举报

3

主题

1万

回帖

172

积分

注册会员

Rank: 2

积分
172
发表于 2022-8-31 16:20:21 | 显示全部楼层
灌灌灌灌水
回复 支持 反对

使用道具 举报

0

主题

1万

回帖

0

积分

中级会员

Rank: 3Rank: 3

积分
0
发表于 2022-10-5 23:30:42 | 显示全部楼层
来看看!!!
回复 支持 反对

使用道具 举报

27

主题

1万

回帖

331

积分

中级会员

Rank: 3Rank: 3

积分
331
发表于 2023-1-11 20:18:15 | 显示全部楼层
看看看咋么
回复 支持 反对

使用道具 举报

1

主题

1万

回帖

155

积分

注册会员

Rank: 2

积分
155
发表于 2023-6-5 04:11:20 | 显示全部楼层
谢谢楼主分享
回复 支持 反对

使用道具 举报

1

主题

1万

回帖

319

积分

中级会员

Rank: 3Rank: 3

积分
319
发表于 2023-9-5 17:06:16 | 显示全部楼层
看看看看
回复 支持 反对

使用道具 举报

0

主题

1万

回帖

124

积分

注册会员

Rank: 2

积分
124
发表于 2024-2-22 22:36:01 | 显示全部楼层
看到这帖子真是高兴!
回复 支持 反对

使用道具 举报

3

主题

1万

回帖

172

积分

注册会员

Rank: 2

积分
172
发表于 2024-2-29 18:54:25 | 显示全部楼层
啊啊啊啊啊啊啊啊啊啊啊啊啊啊
回复 支持 反对

使用道具 举报

0

主题

1万

回帖

0

积分

中级会员

Rank: 3Rank: 3

积分
0
发表于 2024-4-15 23:53:32 | 显示全部楼层
不错的源码论坛
回复 支持 反对

使用道具 举报

4

主题

1万

回帖

262

积分

中级会员

Rank: 3Rank: 3

积分
262
发表于 2024-7-25 18:59:11 | 显示全部楼层
还有什么好东西没
回复 支持 反对

使用道具 举报

高级模式
B Color Image Link Quote Code Smilies

本版积分规则

手机版|小黑屋|网站地图|源码论坛 ( 海外版 )

GMT+8, 2024-9-17 04:34 , Processed in 0.157422 second(s), 26 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表