【发布时间】:2015-04-13 11:11:51
【问题描述】:
我们使用 Struts 2 验证和大量自定义验证来验证我们的表单。
@Validations(
customValidators =
{ @CustomValidator(type = "AccountFormat", fieldName = "accountNo") }
)
我们也可以通过重写 validate 方法来手动验证表单
public void validate() {
//Username can't be blank
if(username.equals("")) {
addFieldError("username", "The Username can't be empty");
}
是否可以在validate()中调用custom validations。
我们为什么需要它?! 所有验证规则都包含在自定义验证中,非常完美。有一些表单需要自己手动验证。我们最终也在这些手动验证表单中剪切并粘贴了一些自定义验证规则,最好在这里调用验证
【问题讨论】:
-
您可以尝试,如果不起作用,请返回此处并提出有效问题,就其所写的而言,此问题是题外话。
-
我当然试过,但根本找不到任何解决方案。
-
您到底遇到了什么麻烦?创建自定义验证器的实例,设置属性并调用它的
validate方法。 -
@RomanC @AleksandrM 我希望我可以使用 Struts API 和我过去通过注释配置的仅路径参数更轻松地做到这一点,例如:
FieldValidatorSupport validator= SomeFactory.getValidator("AccountFormat");,然后是validator.setFieldName("accountNo");,最后是 @ 987654328@可以吗?! -
代替
SomeFactory.getValidator调用new YourCustomValidator(),设置字段名称并调用validate。够容易吗? :)
标签: validation struts2