<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 閱讀(438) 評論(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

    生活保健

    解析文件

    搜索

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 国精产品一区一区三区免费视频| 亚洲性无码av在线| 免费无码专区毛片高潮喷水| 无码人妻久久一区二区三区免费丨| 亚洲四虎永久在线播放| 久草免费福利视频| 亚洲一区二区成人| 国产1000部成人免费视频| 亚洲an日韩专区在线| 成年午夜视频免费观看视频| 亚洲精品中文字幕| 免费在线观看黄色毛片| 一级特级aaaa毛片免费观看| 亚洲一本大道无码av天堂| 丝瓜app免费下载网址进入ios| 亚洲av永久无码制服河南实里| 91香焦国产线观看看免费| 亚洲va在线va天堂va手机| 日韩视频免费在线| 一道本在线免费视频| 五月天网站亚洲小说| 久久久久av无码免费网| 亚洲爆乳大丰满无码专区| 免费国产高清视频| 东方aⅴ免费观看久久av| 亚洲日韩乱码久久久久久| 天堂在线免费观看中文版| 人成电影网在线观看免费| 亚洲av日韩综合一区在线观看| 国产成人精品免费视频大全麻豆| 亚洲精品亚洲人成在线| 国产亚洲精品拍拍拍拍拍 | 免费无码婬片aaa直播表情| 亚洲精品国产品国语在线| 2021国产精品成人免费视频| 国产AV无码专区亚洲AV麻豆丫| 亚洲一区二区三区免费| 久久www免费人成看片| 看一级毛片免费观看视频| 亚洲国产一区国产亚洲| 全免费a级毛片免费看无码|