Commons-Validator

1.基本文件安装

1.1 从http://jarkarta.apache.org/commons/validator/ 下载commons validator的1.3版

1.2 http://springmodules.dev.java.net 下载springmodules 0.4。但只有springside所带的版本能够支持Commons Validator 1.2/1.3。

1.3 将下列文件添加到项目
      *把上述两个jar加入到web-inf/lib
      *在web-inf 增加 springside带的validator-rules.xml
      *在javascript目录增加springside带的validator.jsp

1.4  修改applicationContext.xml
       加validatorFactory节点和beanValidator节点
       参照springside的applicationContext.xml
       注意当前版本 validatorFactory只能写在applicationContext-*.xml而不能写在*-servlet.xml.

1.5 修改项目的i18N文件
      参照/misc/i18n/messages_zh_CN.properties 的# -- validator errors --部分

1.6 修改bookstore-servlet.xml ,为controller注入beanValidator

    <bean name="bookManagerController" class="org.springside.bookstore.web.BookManagerController" autowire="byName">
     <property name="validators" ref="beanValidator"/>
    </bean>

不过推荐把beanValidator改名为validators,默认注入。

1.7 复制springside自带的validator.xml 作为基础进行修改.注意文件里必须声明使用Commons Validator 1.3

2.使用

 参照springside中图书管理的例子。因为需要在Client和Server Side同时使用,而且Server Side默认的ComanndName命名法为Domain类的小写如order, book, 所以Form-Name也取book, order.

2.1 定义validator.xml文件

        严重BS validator.xml继承了struts只要 xml解释器方便,不管程序员劳动量的语法。相对的spring比它要好些。appfuse推荐用xdoclet,在pojo上annotation注释并生成validator.xml。

        validator的类型和配置参数我没有一个很明确的文档,大家随便google。

        另,validator项目时有升级,请留意版本间与语法的不同。其中key="book.name"是i18n的key name,也可以直接写中文key= "名称"。validator找不到名称对应的i18nkey时就会直接显示"名称"

<form-validation>
    <formset>
        <form name="book">
            <field property="name" depends="required">
                <arg position="0" key="book.name"/>
            </field>
        </form>
    </formset>
</form-validation>

2.2 使用clientside javascript 校验

     commons-validator唯一让我觉得可取的地方, 就是和Rife一样,可以在元数据一处设置校验规则,而在client,server两端同时应用了。

   参考editBook.jsp

  <%@ taglib prefix="validator" uri="http://www.springmodules.org/tags/commons-validator" %>
<validator:javascript formName="book" staticJavascript="false"/>
<form name="book" οnsubmit="return validateBook(this)">

2.3 server side校验

     只要把统一定义的beanValidator 设置给controller的validators变量即完成任务,剩下的就是spring multi-actionController或springside baseController的事情了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值