Reputation: 1774
I have a problem with a Date Validation. It works only at the begining. After I put a date and delete it once again it stop working. With the String field it works. Besides I wish to use 2 Validators but it detects only one Could someone help me or give me a hint?
First I define in my DateEditor that I need a validation:
@Override
public void setConfiguration(EditorConfiguration editorConfiguration) {
Validator<LocalDate> validator = ((DateFieldConfiguration) editorConfiguration).getValidator();
Validator<LocalDate> validator2 = ((DateFieldConfiguration) editorConfiguration).getValidator2();
if (validator != null && validator2 != null) {
binder.forField(this).withValidator(validator).withValidator(validator2).asRequired("Mandatory")
.bind(s -> getValue(), (b, v) -> setValue(v));
}
}
In my questions configuration I added a Validators methods:
private Validator<LocalDate> dateRequiredValidator() {
return Validator.from(v -> v != null,
"Feld darf nicht leer sein");
}
private Validator<LocalDate> dateNotAllowedValidator() {
LocalDate today = LocalDate.now();
return Validator.from(v -> !(v.isAfter(today)),"Datum kann nicht in der Zulunft sein");
}
and I assure that I will execute
question.setEditorConfiguration(new DateFieldConfiguration(dateRequiredValidator(),dateNotAllowedValidator()));
I tried that solution with my String Field and everything works like a charm
Upvotes: 1
Views: 156