無聊人士

          搬家==》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
          主站蜘蛛池模板: 尼勒克县| 贵定县| 余姚市| 肥城市| 金沙县| 温州市| 连州市| 舞钢市| 孟村| 耿马| 舒兰市| 湖南省| 濮阳县| 普宁市| 兴山县| 鹤壁市| 方正县| 崇礼县| 克拉玛依市| 漯河市| 金寨县| 房山区| 合阳县| 宁德市| 积石山| 武隆县| 天镇县| 大理市| 宿迁市| 乡城县| 吉安县| 巴中市| 昌平区| 玉山县| 阳江市| 尼勒克县| 原平市| 邳州市| 庆元县| 修水县| 南陵县|