rdman 2009-01-09 13:00
浏览 536
已采纳

各位高手,我想问一下Struts中的validate框架可以在ssh整合中使用吗?我在ssh中使用老

各位高手,我想问一下Struts中的validate框架可以在ssh整合中使用吗?我在ssh中使用老报404错误 说找不到Action 急于想知道答案 帮帮忙 谢谢了

  • 写回答

3条回答 默认 最新

  • ChocooM 2009-01-09 13:28
    关注

    由于不知道你说的错误是什么错误,不好直接解答。这里给出一个SSH只用Validator的例子:

    在SSH使用Validator框架,需要依赖两个jar包:commons-validator-1.3.0.jar和oro-2.0.8.jar.

    要在SSH框架中使用Validator,更确切的说是在Struts框架中使用,可以采用插件机制把Validator加入到框架,这需要修改原来的struts-config.xml文件,增加配置ValidatorPlugIn插件,代码如下:



    这样当应用启动时,Struts框架就会加载ValidatorPlugIn插件。

    validator-rules.xml文件是Validator框架自带的,它定义了一些常有的校验规则,而validation.xml是我们自己定义的,它针对某个应用,内容如下:

    <?xml version="1.0" encoding="iso-8859-1"?>
    <!DOCTYPE form-validation PUBLIC
    "-//Apache Software Foundation//DTD Commons Validator Rules Configuration 1.3.0//EN"
    "http://jakarta.apache.org/commons/dtds/validator_1_3_0.dtd">













    <var>
    minlength
    6
    </var>










    form元素的name属性指定要进行验证的表单,field元素的property属性指定要验证属性,depends定义了验证方式,在这里,我们定义了username属性不能为空,password属性不能为空,并且最小长度不能小于6,email属性必须是合法的邮件地址。定义验证方式之后,我们还必须修改资源文件registermessages.properties,增加以下内容:

    Errors

    errors.header=

    ValidationError

    Youmustcorrectthefollowingerror(s)beforeproceeding:
    errors.required={0}isrequired.
    errors.minlength={0}cannotbelessthan{1}characters.
    errors.email={0}isaninvalide-mailaddress.
    ==================================================================这资源文件中{0}对应着,{1}对应着,以此类推,如果有验证错误产生,将用key的值替换{n}

    此外,我们还要修改struts-config.xml文件,修改内容见粗体:

    //把原来的DynaActionForm 改为DynaValidatorForm

    type="org.apache.struts.validator.DynaValidatorForm">




    //把原来的validate="false"改为validate="true"

    type="test.register.action.RegisterAction" validate="true"
    input="/register.jsp">

    修改错误显示的样式,我们在register.jsp中,替换原来为:

    logic:messagesPresent


    /logic:messagesPresent

    注意在页面上加入:<%@ taglib uri="http://struts.apache.org/tags-logic" prefix="logic" %>

    这样,运行程序,就能看到验证的效果了。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥15 用windows做服务的同志有吗
  • ¥60 求一个简单的网页(标签-安全|关键词-上传)
  • ¥35 lstm时间序列共享单车预测,loss值优化,参数优化算法
  • ¥15 Python中的request,如何使用ssr节点,通过代理requests网页。本人在泰国,需要用大陆ip才能玩网页游戏,合法合规。
  • ¥100 为什么这个恒流源电路不能恒流?
  • ¥15 有偿求跨组件数据流路径图
  • ¥15 写一个方法checkPerson,入参实体类Person,出参布尔值
  • ¥15 我想咨询一下路面纹理三维点云数据处理的一些问题,上传的坐标文件里是怎么对无序点进行编号的,以及xy坐标在处理的时候是进行整体模型分片处理的吗
  • ¥15 一直显示正在等待HID—ISP
  • ¥15 Python turtle 画图