java – 使用Spring验证器验证嵌套对象的列表? - 代码日志

java – 使用Spring验证器验证嵌套对象的列表?

我想知道如何在Spring MVC应用程序中使用Spring Validator(而不是注释)验证我的窗体中嵌套对象的列表。

class MyForm() {
    String myName;
    List<TypeA> listObjects;
}
class TypeA() {
    String number;
    String value;
}

如何创建一个MyFormValidator来验证listObjects,并添加TypeA的值和值的错误消息。

public class MyFormValidator implements Validator {

    @Override
    public boolean supports(Class clazz) {
        return MyForm.class.equals(clazz);
    }

    @Override
    public void validate(Object target, Errors errors) {
        MyForm myForm = (MyForm) target;

        for (int i = 0; i < myForm.getListObjects().size(); i++) {
            TypeA typeA = myForm.getListObjects().get(i);

            if(typeAHasAnErrorOnNumber) {
                errors.rejectValue("listObjects[" + i + "].number", "your_error_code");
            }

            ...
        }

        ...
    }

}

有趣的链接:

> Spring MVC: Multiple Row Form Submit using List of Beans

http://stackoverflow.com/questions/12680730/validate-a-list-of-nested-objects-with-spring-validator

本站文章除注明转载外,均为本站原创或编译
转载请明显位置注明出处:java – 使用Spring验证器验证嵌套对象的列表?