無(wú)聊人士

          搬家==》www.soapui.cn

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

          看了一下xhtml的velocity模板,如果檢驗(yàn)未通過(guò),ww2將validators.xml中相應(yīng)field檢驗(yàn)失敗的message是放進(jìn)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代碼,自己寫了個(gè)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 閱讀(1412) 評(píng)論(0)  編輯  收藏 所屬分類: WebWork、Struts2、FreeMarker
          主站蜘蛛池模板: 石阡县| 宁武县| 民和| 龙胜| 乐昌市| 邢台县| 平阳县| 新泰市| 昌乐县| 宾阳县| 太仓市| 临沧市| 天等县| 桐庐县| 城市| 平果县| 漠河县| 东乌| 怀集县| 克东县| 特克斯县| 潜江市| 阳高县| 虞城县| 英超| 扎鲁特旗| 马龙县| 佛学| 张家港市| 揭阳市| 堆龙德庆县| 镇安县| 白水县| 日土县| 城固县| 会东县| 天全县| 五华县| 铁岭县| 门源| 普安县|