無聊人士

          搬家==》www.soapui.cn

            BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
            32 隨筆 :: 0 文章 :: 60 評論 :: 0 Trackbacks
          使用ww2的validator,taglib就只能使用xhtml了。taglib我一向討厭,再加上ww2 xhtml這套做得非常難看,自做主張的加一堆table、td之類的html標簽進去。

          看了一下xhtml的velocity模板,如果檢驗未通過,ww2將validators.xml中相應field檢驗失敗的message是放進fieldErrors里面的。

          checkbox.vm
          #if( $fieldErrors.get($parameters.name) )
            #set ($hasFieldErrors = $fieldErrors.get($parameters.name))
            #foreach ($error in $fieldErrors.get($parameters.name))
              <tr>
                  <td align="left" valign="top" colspan="2"><span class="errorMessage">$!error</span></td>
              </tr>
            #end
          #end

          <tr>
              <td valign="top" colspan="2">
          #* Use an extra table so that the checkbox doesn't align with the other columns. *#
          <table width="100%" border="0" cellpadding="0" cellspacing="0">
              <tr>
                  <td valign="middle">#parse("/template/simple/checkbox.vm")</td>
                  <td width="100%" valign="middle"><label #if ($parameters.id) for="$!webwork.htmlEncode($parameters.id)"#end#if ($hasFieldErrors) class="checkboxErrorLabel"#else class="checkboxLabel"#end>$!webwork.htmlEncode($parameters.label)</label></td>
              </tr>
          </table>
          #parse("/template/xhtml/controlfooter.vm")

          我使用的模板引擎是freemarker,參照xhtml的vm代碼,自己寫了個marco。

          <#macro validError local>
              <#if req.method=='POST'>
                  <#if
                      fieldErrors?has_content &&
                      fieldErrors[local]?exists
                  >
                      <br>
                      <font color="red">
                          <#list fieldErrors[local] as error>
                              ${error}
                          </#list>
                      </font>
                  </#if>
              </#if>
          </#macro>

          模板示例:
                      <tr>
                          <td width="80" align="right">登錄密碼:</td>
                          <td>
                          <input type="password" name="model.password"
                              value="${model.password?if_exists}" size="24">
                          <@validError local="model.password"/>
                          </td>
                      </tr>
          posted on 2005-11-18 12:07 mmwy 閱讀(1416) 評論(0)  編輯  收藏 所屬分類: WebWork、Struts2、FreeMarker
          主站蜘蛛池模板: 同心县| 丰城市| 若尔盖县| 中阳县| 济宁市| 自治县| 吉安县| 天祝| 绥化市| 独山县| 西丰县| 平罗县| 奉贤区| 道孚县| 阿坝| 栾川县| 肥乡县| 新昌县| 昭觉县| 资中县| 武胜县| 九龙县| 安岳县| 自贡市| 东安县| 清流县| 建湖县| 司法| 瑞丽市| 扶沟县| 九江市| 淮阳县| 武义县| 米泉市| 霍城县| 九江县| 贵南县| 龙海市| 平武县| 巨鹿县| 大新县|