Ich habe die folgende Klasse:Binder Validator für Feld nicht richtig funktioniert für NullPresentation Wert
public class FooClass {
Integer number;
String numberInLetters;
public Integer getNumber() {
return number;
}
public void setNumber(Integer number) {
this.number = number;
}
public String getNumberInLetters() {
return numberInLetters;
}
public void setNumberInLetters(String numberInLetters) {
this.numberInLetters = numberInLetters;
}
}
Als ich eingestellt, beispielsweise ein einfaches Bindemittel für ein Feld mit dem Namen Nummer, assoziiert fooObject:
FooObject fooObject = new FooObject();
fooObject.setNumberInLetters("thirty");
IntegerRangeValidator validator = new IntegerRangeValidator("The value must be greater than or equal to 30", 30, null);
validator.setMinValueIncluded(true);
Binder<FooObject> binder = new Binder<>();
binder.forField(number)
.withConverter(Integer::valueOf, String::valueOf, "Must be a number")
.withNullRepresentation(0)
.withValidator(intervaloValidator)
.bind(FooObject::getNumber, Fooobject::setNumber);
Der Validator als
Außer bei Null (null Darstellung), in diesem Fall wird die Validierung nicht funktioniert.
ich dieses Problem beheben kann, zu entfernen withNullRepresentation(0)
aber wenn ich meine Form zeigen null
Text, wie dies gebührenpflichtig:
Wie Nullwert bestätigen, wenn ich setzen eine Nulldarstellung für das Feld ?