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

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

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

    隨筆-61  評論-159  文章-0  trackbacks-0
             在struts2中,一般的action都繼承ActionSupport這個類,可以重寫public void validate()來進行數據校驗,對應提示信息來說一般有兩個比較常用的方法就是this.addFieldError("field name","error message"); 和 this.addActionError("error message");兩個方法。
             由于在ActionSupport這個類實現了ValidationAware接口,接口里面聲明了這兩個方法:
            
    1public void addActionError(String anErrorMessage) {
    2        validationAware.addActionError(anErrorMessage);
    3    }

    4
    5    public void addActionMessage(String aMessage) {
    6        validationAware.addActionMessage(aMessage);
    7    }

    ValidationAwareSupport實現了ValidationAware接口,通過查看ValidationAwareSupport源碼中的兩個錯誤提示方法:
            private Collection actionErrors;
            private Map fieldErrors;

     1public synchronized void addFieldError(String fieldName, String errorMessage) {
     2        final Map errors = internalGetFieldErrors();
     3        List thisFieldErrors = (List) errors.get(fieldName);
     4
     5        if (thisFieldErrors == null{
     6            thisFieldErrors = new ArrayList();
     7            errors.put(fieldName, thisFieldErrors);
     8        }

     9
    10        thisFieldErrors.add(errorMessage);
    11    }

    1public synchronized void addActionError(String anErrorMessage) {
    2        internalGetActionErrors().add(anErrorMessage);
    3    }

    4


    注:由于fielderrors級別是Map類型,所以this.addFieldError("field name","error message"); ,而actionerror級別是Collection級別,所以this.addActionError("error message");

    在實際的項目開發應用中如果同時用到field和action錯誤級別的時候,在jsp頁面中的表單有用到struts2的標簽來實現的話,就有可能對于同一個表單,既有filed級別error提示又有action級別的error提示,這時,可以根據項目的實際需要來取舍,但是如果兩個都要同時存在的時候,只顯示action級別的error,而不顯示field級別的action,由于struts2標簽默認就是顯示field級別的error,所以要修改模板,加入theme="simple"即可,這時struts2表單那標簽默認的顯示field錯誤提示失效,使用這個模板的好處還可以和普通的html一樣隨便設計版面。例如:<s:form action="RegisterAction"theme="simple" >
    PS:要顯示action級別的錯誤提示,需要在jsp頁面中的表單里面加入<s:actionerror/>。

     



    -------------------------------------------------------------------------------------------------
    PS:本博客文章,如果沒有注明是有“轉”字樣,屬于本人原創。如果需要轉載,務必注明作者文章的詳細出處地址,否則不允許轉載,多謝合作!
    posted on 2008-11-27 22:44 apple0668 閱讀(1860) 評論(0)  編輯  收藏 所屬分類: struts2
    主站蜘蛛池模板: 亚洲精品免费在线观看| 麻豆国产VA免费精品高清在线 | 四虎免费久久影院| 和老外3p爽粗大免费视频| 亚洲视频在线观看网站| 国产精品色午夜免费视频 | 日韩免费a级在线观看| 在线观看人成视频免费无遮挡 | 成在人线AV无码免费| 男人j进女人p免费视频| 亚洲AV成人片色在线观看高潮 | 亚洲国产成人精品91久久久 | 亚洲免费网站在线观看| 曰批全过程免费视频免费看| 亚洲丝袜美腿视频| 国产嫩草影院精品免费网址| 日韩av无码久久精品免费| 亚洲国产精品无码第一区二区三区| 国产亚洲成av片在线观看| 国内精品免费视频自在线| 国产自国产自愉自愉免费24区| 亚洲五月丁香综合视频| 国产V亚洲V天堂无码| 日产乱码一卡二卡三免费| 免费A级毛片av无码| 一级黄色免费大片| 亚洲乱码一区二区三区国产精品| 亚洲午夜福利717| 国产禁女女网站免费看| 在线观看成人免费视频不卡| 精品人妻系列无码人妻免费视频| 亚洲一本一道一区二区三区| 亚洲视频在线观看免费| 久99精品视频在线观看婷亚洲片国产一区一级在线 | 成人性生活免费视频| 日本视频在线观看永久免费| 老司机免费午夜精品视频| 麻豆狠色伊人亚洲综合网站 | 亚洲AV无码久久久久网站蜜桃| 亚洲爆乳无码专区| 亚洲欧洲精品成人久久奇米网|