Ich habe einfach Klasse:
public class Mock {
@Size(min=1, max=3)
private List<String> strings;
public List<String> getStrings() {
return strings;
}
public void set(List<String> strings) {
this.strings = strings;
}
}
Und Test:
Mock mock = new Mock();
mock.setStrings(Collections.emptyList());
final Set<ConstraintViolation<Mock>> violations1 = Validation.buildDefaultValidatorFactory().getValidator().validate(mock);
assertFalse(violations1.isEmpty());
mock.setStrings(Arrays.asList("A", "B", "C", "D"));
final Set<ConstraintViolation<Mock>> violations2 = Validation.buildDefaultValidatorFactory().getValidator().validate(mock);
assertFalse(violations2.isEmpty());
Es scheint, dass @Size
Anmerkung gut funktioniert. Es kommt von javax.validation.constraints.Size
Für mich funktioniert @Size perfekt. Können Sie uns Code zeigen, wo Sie ihn validieren? Haben Sie import javax.validation.constraints.Size? – ByeBye