如何在Struts 2中正确validation字段

我想知道我在这里做错了什么:

   Required field (*)   8 8 ID must has 8 characters    

因为,实际上我收到了这个错误:

错误com.opensymphony.xwork2.validator.AnnotationActionValidatorManager加载文件时捕获exception… / action / ServiceAction-findPets-validation.xml无效的validation类型:requiredString – field-validator

另外,我想知道如果进行ajax调用(并发送JSON数据)我可以validation这些数据的存在吗? 我的意思是通过.xmlvalidation器。 此外,如果我实现Validateable接口,每次请求到达此操作时,此方法将被触发? 有没有办法指定哪种动作方法呢?

如果您想跳过任何操作方法的validation,请使用@SkipValidation批注。

 @SkipValidation public String yourMethod { ... return "input"; } 

名称区分大小写,您应该使用

  

填充到操作后,可以validation数据。 您可以使用*-validation.xml声明方式执行此操作,也可以通过validate() 编程方式执行此操作。

您可以配置validation拦截器以在这两种方式之间进行选择,因为默认情况下, validate()在声明性validation完成后运行,即使它们是短路的。

考虑使用alwaysInvokeValidate参数。 如果将别名validation文件用作ActionClass-alias-validation.xml则仅对此操作别名运行validation。 映射操作方法时,可以使用此别名。