私は、特定のフォーマットでなければならない文字列のリストを持っています。私は、指定された形式ではない文字列でエラーメッセージを返す必要があります。どのように春の検証でこれを行う(私は、休止状態のバリデータを使用しています)。 注釈:Spring MVC無効な値をリストして報告するための検証
@Documented
@Retention(RUNTIME)
@Target({FIELD, METHOD})
@Constraint(validatedBy = HostsValidator.class)
public @interface HostsConstraint {
String message();
Class<?>[] groups() default {};
Class<? extends Payload>[] payload() default {};
}
実装:
public class HostsValidator implements ConstraintValidator<HostsConstraint, List<String>>{
@Override
public void initialize(OriginHostsConstraint constraintAnnotation) {
}
@Override
public boolean isValid(List<String> strings, ConstraintValidatorContext context) {
for (String s : strings) {
if (!s.matches("[0-9]+") {
//How do I say: Invalid string <s> ?
return false;
}
}
}
}
用法:
public class Test {
@HostsConstraint(message="Invalid string ")
private List<String> hosts;
}
validatedValue
を使用すると、全体のリストが表示されます。