<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    報getOutputStream() has already been called for this response 這個錯誤

     getOutputStream() has already been called for this response 這個錯誤遇到過不少次,網上看到大多不能解決問題。
        下面兩點是我自己總結出來的:
        1、在我們應用驗證碼時,都會用到字節流response.getOutputStream()來將驗證碼輸出,但是jsp頁面自己最后會調用字符流JspWriter的out()方法將頁面的內容輸出。通過查看servlet的API我們可以看到知道,在servlet中不能夠同時利用這兩個流輸出,解決辦法將驗證碼寫在servlet中,具體見下面。
        2、相信請求轉發( request.getRequestDispacher().forward() )和請求跳轉( response.sendRedirect() )的區別大家都知道。其中request.getRequestDispacher().forward() 方法的調用者與被調用者之間共享相同的request對象和response對象,它們屬于同一個訪問請求和響應過程。JSP頁面轉譯為的_servlet會最后調用releasePageContext()方法( All PageContext objects obtained via this method shall be released by invoking releasePageContext().)釋放我們頁面所有的實體對象,當我們的調用者有頁面輸出時,就會拋出這個異常。具體原因也沒有弄清楚,各位大俠如果誰知道可以告知一下。其實驗證碼也是同一個原理,如果我們將驗證碼的代碼寫在jsp頁面中,因為jsp頁面會調用JspWriter的out()方法將內容輸出,同時我們的圖片又調用了response.getOutputStream()方法因此會拋出這個異常;如果我們將驗證碼寫在servlet中,就不會同時使用兩種輸出也就不會出錯。有時即使調用者頁面沒有輸出,也會拋出這個異常,仔細看jsp轉譯以后的源碼發現輸出了換行,因此,我們最好把調用者頁面的%>和<%之間換行去掉,把%>和<%直接寫在一起。
        另外,如果我們實在要在jsp中用到response.getOutputStream(),比如驗證碼、jspSmartUpload,我們需要在最后加入如下代碼:
            response.reset();
            out.clear();
            out=pageContext.pushBody();

    posted on 2012-09-24 17:33 youngturk 閱讀(433) 評論(0)  編輯  收藏 所屬分類: JSP隨筆Java基礎servlet

    <2012年9月>
    2627282930311
    2345678
    9101112131415
    16171819202122
    23242526272829
    30123456

    導航

    統計

    公告

    this year :
    1 jQuery
    2 freemarker
    3 框架結構
    4 口語英語

    常用鏈接

    留言簿(6)

    隨筆分類

    隨筆檔案

    文章分類

    文章檔案

    相冊

    EJB學習

    Flex學習

    learn English

    oracle

    spring MVC web service

    SQL

    Struts

    生活保健

    解析文件

    搜索

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 美女被爆羞羞网站免费 | 免费A级毛片无码久久版| 无码专区一va亚洲v专区在线| 丁香五月亚洲综合深深爱| 91大神亚洲影视在线| 亚洲字幕在线观看| 国产美女视频免费观看的网站| 无码日韩人妻av一区免费| 国产亚洲欧洲Aⅴ综合一区| 亚洲欧美日韩一区二区三区| 最新国产乱人伦偷精品免费网站| 午夜私人影院免费体验区| 亚洲av日韩av不卡在线观看| 成人精品国产亚洲欧洲| 福利免费观看午夜体检区| 亚洲一区精彩视频| 一级毛片免费毛片一级毛片免费| 亚洲乱码中文论理电影| 黄色三级三级免费看| 亚洲国产婷婷香蕉久久久久久| 亚洲嫩草影院久久精品| 久久免费视频一区| 亚洲精品综合一二三区在线| 真实国产乱子伦精品免费| 亚洲色成人网站WWW永久| 久久久亚洲精华液精华液精华液| 足恋玩丝袜脚视频免费网站| 亚洲无人区午夜福利码高清完整版 | 亚洲一卡二卡三卡| 国产日韩精品无码区免费专区国产| 国产亚洲精品国看不卡| 亚欧人成精品免费观看| 午夜亚洲www湿好大| 日韩版码免费福利视频| 亚洲高清中文字幕综合网| 成年女人免费视频播放体验区| 亚洲免费人成视频观看| 伊人久久亚洲综合影院| 99热在线观看免费| 亚洲视频在线不卡| 免费看男女下面日出水视频|