国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JSP > 正文

JSP上傳圖片產生 java.io.IOException: Stream closed異常解決方法

2020-07-27 21:39:21
字體:
來源:轉載
供稿:網(wǎng)友
在做 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'); // 如上我已經(jīng)關了 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中已經(jīng)說的很清楚。

如下:(要特別注意一下flush()和clear()方法的區(qū)別,因為需求不同程序是不同的)
abstract voidflush()
Flush the stream.

abstract voidclear()
Clear the contents of the buffer.


PageContext 實現(xiàn)了抽象類 JspContext ,方法:pushBody(), 保存當前的out對象
BodyContentpushBody()
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 內置對象
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 望江县| 珲春市| 阳江市| 东安县| 南皮县| 长春市| 壤塘县| 遂宁市| 封开县| 施秉县| 务川| 沙洋县| 南皮县| 静安区| 海宁市| 威远县| 祁阳县| 贵港市| 江永县| 岫岩| 乌海市| 榆中县| 定远县| 青川县| 德令哈市| 玛曲县| 雅江县| 龙陵县| 朝阳区| 虞城县| 布尔津县| 宁远县| 新民市| 乐安县| 高州市| 邵阳县| 武乡县| 古丈县| 福贡县| 清苑县| 桦甸市|