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

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

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

    隨筆 - 312, 文章 - 14, 評論 - 1393, 引用 - 0
    數(shù)據(jù)加載中……

    Struts1.x系列教程(17):使用IncludeAction和ForwardAction類包含和轉(zhuǎn)入Web資源

    本文為原創(chuàng),如需轉(zhuǎn)載,請注明作者和出處,謝謝!

    上一篇:Struts1.x系列教程(16):使用LocaleAction類實(shí)現(xiàn)國際化的Web程序

    一、使用IncludeAction類包含Web資源

        雖然在JSP頁面中可以使用<jsp:include>標(biāo)簽包含另一個Web資源,但Struts框架提倡在包含Web資源時應(yīng)先經(jīng)過Struts控制器處理后,再由Struts控制器負(fù)責(zé)包含Web資源。org.apache.struts.actions.IncludeAction類提供了包含其他Web資源的功能。使用IncludeAction類要在struts-config.xml中配置<action>元素。配置IncludeAction類的代碼如下:

    <action path="/include" type="org.apache.struts.actions.IncludeAction"
                input
    ="/firstValidator.jsp" validate="false"
                name
    ="firstValidatorForm" parameter="/firstValidator.jsp" />

    在配置上面代碼時應(yīng)注意兩點(diǎn):

    1. firstValidator.jsp頁面使用了firstValidatorForm進(jìn)行數(shù)據(jù)驗(yàn)證,所有應(yīng)將<action>元素的validate屬性設(shè)為“false”。否則在運(yùn)行include動作時就會進(jìn)行驗(yàn)證。在這時firstValidatorForm中的所有屬性都沒有被賦值。所以每個屬性都無法通過驗(yàn)證。讀者可以將validate屬性設(shè)為“true”,看看會發(fā)生什么情況。
        2. IncludeAction類的功能和效果與<jsp:include>標(biāo)簽完全一樣。這就意味著在IncludeAction包含的其他Web資源中無法改變響應(yīng)信息頭。這樣就無法改變Content-Type字段的值。因此,按著上面的設(shè)置來運(yùn)行程序,所有的中文信息會顯示亂碼。解決的方法有很多,如可以自己實(shí)現(xiàn)一個IncludeAction類的子類,在子類的execute方法中設(shè)置Content-Type的值。或都更簡單的方法是在過濾器(EncodingFilter)中加入如下的代碼:   

    response.setCharacterEncoding("GBK");


    在IE中輸入http://localhost:8080/samples/include.do可訪問include動作。

       雖然在JSP頁面中可以使用<jsp:forward>標(biāo)簽把請求轉(zhuǎn)發(fā)給另一個Web資源,但Struts框架提倡在轉(zhuǎn)發(fā)Web資源時應(yīng)先經(jīng)過Struts控制器處理后,再由Struts控制器轉(zhuǎn)發(fā)Web資源。org.apache.struts.actions.ForwardAction類提供了轉(zhuǎn)發(fā)其他Web資源的功能。使用ForwardAction類要在struts-config.xml文件中配置<action>元素。下面的代碼演示了如何在<action>元素中使用ForwardAction類來包含其他的Web資源:

    <action path="/forward" type="org.apache.struts.actions.ForwardAction"
                input
    ="/firstValidator.jsp" validate="false"
                name
    ="firstValidatorForm" parameter="/firstValidator.jsp" />

        由于經(jīng)過轉(zhuǎn)發(fā)的Web資源可以改變Content-Type字段的值,因此,使用ForwardAction類進(jìn)行轉(zhuǎn)發(fā)時,無需再另外改變Content-Type字段的值(因?yàn)樵?/span>firstValidator.jsp頁面中已經(jīng)設(shè)置了Content-Type的值)。
       
    IE中輸入http://localhost:8080/samples/forward.do可訪問forward動作。

    下一篇:
    Struts1.x系列教程(18):使用DispatchAction類調(diào)用多個Action方法





    Android開發(fā)完全講義(第2版)(本書版權(quán)已輸出到臺灣)

    http://product.dangdang.com/product.aspx?product_id=22741502



    Android高薪之路:Android程序員面試寶典 http://book.360buy.com/10970314.html


    新浪微博:http://t.sina.com.cn/androidguy   昵稱:李寧_Lining

    posted on 2009-02-19 10:36 銀河使者 閱讀(2605) 評論(1)  編輯  收藏 所屬分類: javaweb 原創(chuàng)struts1.x

    評論

    # re: Struts1.x系列教程(17):使用IncludeAction和ForwardAction類包含和轉(zhuǎn)入Web資源  回復(fù)  更多評論   

    肚子不痛了?
    2011-05-14 23:49 | cheap sunglasses
    主站蜘蛛池模板: 中文亚洲AV片在线观看不卡 | 2020因为爱你带字幕免费观看全集| 国产精品美女久久久免费| 免费无码精品黄AV电影| 国产极品美女高潮抽搐免费网站| ww亚洲ww在线观看国产| 免费电影在线观看网站| 亚洲熟女精品中文字幕| 在线成人a毛片免费播放| 亚洲开心婷婷中文字幕| 亚洲中文字幕久久久一区| 好男人看视频免费2019中文| 亚洲欧美日韩自偷自拍| 久久免费线看线看| 亚洲综合一区二区国产精品| 在线观看www日本免费网站| 亚洲不卡1卡2卡三卡2021麻豆| 丰满人妻一区二区三区免费视频| 伊人久久亚洲综合| 久9热免费精品视频在线观看| 亚洲国产精品13p| 精精国产www视频在线观看免费| 久久亚洲高清观看| 国产精品怡红院永久免费| 国产亚洲精品VA片在线播放| 国产精品另类激情久久久免费| 国产vA免费精品高清在线观看| 亚洲an天堂an在线观看| 黄色网页在线免费观看| 色噜噜综合亚洲av中文无码| 国产成人精品免费视频动漫 | 日韩成人免费视频播放| 亚洲国产av一区二区三区丶| 中国在线观看免费的www| 亚洲国产人成在线观看69网站| 成人自慰女黄网站免费大全| 亚洲美女自拍视频| 亚洲国产小视频精品久久久三级 | 国产午夜无码片免费| 亚洲综合视频在线| 亚洲福利视频一区二区|