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

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

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

    rednight

    0x2B|~0x2B,That's not a question,Just do it.
    posts - 32, comments - 14, trackbacks - 0, articles - 0

    如果你碰到"Cannot Forward a Response that is Already Committed"這樣的錯(cuò)誤信息,一定是應(yīng)用對一次http請求做了多次頁面跳轉(zhuǎn)或?qū)esponse對象做過close后,又去寫響應(yīng).

    這個(gè)問題的根本原因由于響應(yīng)本次請求的Response對象的狀態(tài)是已提交狀態(tài)造成的, 它不允許響應(yīng)提交多次。
    
    什么時(shí)候Response對象的狀態(tài)變成已提交狀態(tài):當(dāng)你的應(yīng)用已經(jīng)實(shí)現(xiàn)了頁面跳轉(zhuǎn)邏輯。
    
    通常原因:
    
    1. 如果你使用了community的話, community的安全認(rèn)證和授權(quán)如果沒有通過,community內(nèi)部會(huì)進(jìn)行頁面跳轉(zhuǎn)。但你的應(yīng)用(對于workshop應(yīng)用的話,指的是action)又試圖進(jìn)行頁面跳轉(zhuǎn),就會(huì)出現(xiàn)這樣的問題。
    
    
        /**
    
         * @jpf:action
    
         * @jpf:forward name="page" path="page.jsp"
    
         */
    
        protected Forward actionMethod()
    
    {
    
        //如果已經(jīng)提交了響應(yīng),你仍然試圖再次進(jìn)行頁面跳轉(zhuǎn),即再次提交響應(yīng),可能出現(xiàn)問題
    
        //通??梢约右粋€(gè)判斷
    
     
    
           if (!getResponse().isCommitted()) {
    
                return new Forward("success");
    
            } else {
    
                return null;
    
            }
    
        }
    
     
    
        protected void beforeAction() {
    
           SecurityManager.checkAuthorization(getRequest(), getResponse(), config.getString(
    
                    CDConstants.CREATE_TERM_ACTION_NAME, ""));
    
          //這個(gè)調(diào)用可能實(shí)現(xiàn)了頁面跳轉(zhuǎn),即提交響應(yīng)
    
    }
    
     
    
    注意JSP中實(shí)現(xiàn)頁面跳轉(zhuǎn)后,加return 語句防止繼續(xù)提交響應(yīng):
    
     
    
    <%
    
           SecurityManager.checkAuthorization(getRequest(), getResponse(), config.getString(
    
                    CDConstants.CREATE_TERM_ACTION_NAME, ""));
    
    {
    
         //可能有實(shí)現(xiàn)頁面跳轉(zhuǎn)邏輯
    
        ……………forward();
    
            return;//記得加retrun.
    
        }
    
    %>
    
     
    
    2. .如果沒有使用community的話,下面情景也會(huì)出現(xiàn)這個(gè)問題
    
     
    
        /**
    
         * @jpf:action
    
         * @jpf:forward name="page" path="page.jsp"
    
         */
    
        protected Forward actionMethod()
    
     
    
    //直接操作Response對象寫響應(yīng)
    
         getResponse().getPrintWriter().println();
    
        …
    
    /
    
       // 又執(zhí)行的頁面跳轉(zhuǎn),也可能出現(xiàn)問題
    
            return new Forward("index");
    
        }
    

    Feedback

    # re: Cannot Forward a Response that is Already Committed  回復(fù)  更多評論   

    2009-04-22 09:54 by 千里雪
    在java代碼中出現(xiàn)這個(gè)問題呢
    該如何解決啊

    # re: Cannot Forward a Response that is Already Committed  回復(fù)  更多評論   

    2009-04-22 09:55 by 千里雪
    有那位大蝦解答一下
    謝謝啊

    # re: Cannot Forward a Response that is Already Committed  回復(fù)  更多評論   

    2009-04-22 11:26 by 萬里冰
    在java中如何修改呢
    thanks

    # re: Cannot Forward a Response that is Already Committed  回復(fù)  更多評論   

    2009-04-22 17:04 by 萬里冰雪
    急用啊
    有那個(gè)大蝦幫忙解答一下啊

    # re: Cannot Forward a Response that is Already Committed  回復(fù)  更多評論   

    2012-06-19 09:02 by qingwei
    怎么解決。。。

    只有注冊用戶登錄后才能發(fā)表評論。


    網(wǎng)站導(dǎo)航:
     
    主站蜘蛛池模板: 中文字幕在线免费观看视频| 天天爽亚洲中文字幕| 一级免费黄色大片| 午夜亚洲福利在线老司机| 在线精品自拍亚洲第一区| 国产免费怕怕免费视频观看| 亚洲av无码无线在线观看| 国产一区二区三区在线观看免费| 亚洲免费综合色在线视频| 免费看国产精品麻豆| 国产V片在线播放免费无码| 亚洲一区无码中文字幕| 国产真人无码作爱视频免费| 亚洲国产精品一区| 在线观看特色大片免费视频| 亚洲heyzo专区无码综合| 亚洲AV无码乱码在线观看牲色| www永久免费视频| 亚洲AV无码乱码国产麻豆穿越| 一区二区免费视频| 亚洲人精品亚洲人成在线| 国产免费人视频在线观看免费| 一级日本高清视频免费观看| 亚洲成av人在线视| 99久久综合国产精品免费| 羞羞的视频在线免费观看| 亚洲AV综合色一区二区三区| 免费v片在线观看视频网站| 色偷偷噜噜噜亚洲男人| 国产自偷亚洲精品页65页| 久久久久高潮毛片免费全部播放| 涩涩色中文综合亚洲| 亚洲日韩在线观看免费视频| 久久国产精品成人片免费| 亚洲a无码综合a国产av中文| 亚洲精品无码成人片久久| 我的小后妈韩剧在线看免费高清版 | 亚洲av无码精品网站| 日韩毛片免费无码无毒视频观看| 另类图片亚洲校园小说区| 亚洲精品综合一二三区在线|