Struts的Validate问题,请用过Validate框架的ggjj帮忙!(周一结贴)

xiaozheneast 2005-03-31 06:11:05
在Struts中使用Validate框架进行表单验证:
1、我的ActionForm(如LeadForm)继承了ValidatorForm,即声明如下:
class LeadForm extends ValidatorForm{……}
2、设置好validate.xml中相应的配置
3、将struts-config.xml中相应的validate设置为true,
4、将相应信息绑定到Resource.properties中,将Resource.properties放到classes下面
5、将validate.xml、validate-rule.xml和struts-config.xml3个文件引入到WEB-INF底下
6、我的jsp页面中的表单于ActionForm(如LeadForm)对应

我就是按照按照以上5步进行配置,自己检查过多边,每一步的配置应该没有问题。
按照struts文档上讲的,当jsp页面提交表单数据的时候,Struts框架会在服务器端自动调用ValidateForm的validate()函数进行数据验证。我如实按照上面的操作进行了,但是情况相反,当jsp页面提交表单数据的时候,服务器端并没有进行数据验证,我单步跟踪调试,发现当表单数据提交时,Struts并没有自动调用ValidatorForm的validate()函数。那位ggjj给指点一下,万分感谢!
...全文
124 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
xcqksy 2005-03-31
  • 打赏
  • 举报
回复
楼主,我认为你要使用validation.xml进行验证,你的formbean应继承DynaValidatorForm,当然你已使用了validation.xml,实际可以完全消除了formbean,验证完全可以在validation.xml中实现,只要你在配置文件中正确配置,肯定能实现的
xiaozheneast 2005-03-31
  • 打赏
  • 举报
回复
我建立的技术群,诚邀 jFresH_MaN(TM) 加入,也欢迎各位酷同仁加入,请注明CSDN,或Struts
群名:将技术进行到底
群号:10371045
xiaozheneast 2005-03-31
  • 打赏
  • 举报
回复
谢谢jFresH_MaN(TM)的精心指点,不过我还是有点不懂。如下:
================================
而Validate框架的验证是客户端的验证
<html:javascript>标记可以使用框架自动生成的js代码

具体的配置需要validation.xml和validator-ruls.xml两个配置文件
我们要在validate.xml定义验证条件和出错的资源内容
================================
以上你所说的,在客户端用js进行数据验证,这个功能我已经实现。我想实现双向数据验证(客户端和服务器端)

我已经在<Action>里面加上validate=true了,struts中讲到,你的form如果继承
ValidateForm,Struts会通过validate.xml和struts-config.xml,自动进行服务器端检测。
我想通过配置validate.xml、struts-config.xml和资源文件,同时对客户端和服务器端进行数据验证,客户端和服务器端的数据验证代码都不用我们手工去写。


jFresH_MaN 2005-03-31
  • 打赏
  • 举报
回复
validate()方法是ActionForm的方法,这个方法的调用就是在<Action>里面加上validate=true来执行的

而Validate框架的验证是客户端的验证
<html:javascript>标记可以使用框架自动生成的js代码

具体的配置需要validation.xml和validator-ruls.xml两个配置文件
我们要在validate.xml定义验证条件和出错的资源内容
xiaozheneast 2005-03-31
  • 打赏
  • 举报
回复
to: jFresH_MaN(TM)
struts1.1中,新增一个ValidateForm类,只要你的form继承这个类,做好相应的配置,就可以动态进行服务器端和客户端数据验证,这样不对吗?请指教!

to: fuwang(岳麓晚枫)
Struts中有ActionForm,你的form继承这个类,就要重写validate()方法,加入你的数据验证的代码,Struts1.1中,新添加了ValidateForm类,只要继承这个类,Struts就会自动调用ValidateForm的validate()方法进行数据验证,当然你要在xml文件和properties文件中作一些相应的配置。能否将你的思想表述一下,万谢!
fuwang 2005-03-31
  • 打赏
  • 举报
回复
没这么做过,要么自定义表单bean,要么用动态验证表单,你这么一继承,就把二者混到一起了。
jFresH_MaN 2005-03-31
  • 打赏
  • 举报
回复
validate()方法不是Validate框架的验证方法
Validate框架是客户端验证,使用的是自动生成的javascript

你的概念有点问题
fdabobi 2005-03-31
  • 打赏
  • 举报
回复
如果直接使用ActionForm的话,validate会隐式使用true

validate框架没用过,不过应该也有类似的属性需要才action元素里面设置吧?

67,513

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧