From 5c839bc6837b90d72561f3a478c0d6089a8f17ba Mon Sep 17 00:00:00 2001 From: Tatu Lund Date: Thu, 3 Dec 2020 05:27:30 +0200 Subject: Binder: Also use converter for user-changed values (#12132) See: https://vaadin.com/forum/thread/15931682 --- server/src/main/java/com/vaadin/data/Binder.java | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'server/src/main/java/com/vaadin') diff --git a/server/src/main/java/com/vaadin/data/Binder.java b/server/src/main/java/com/vaadin/data/Binder.java index d0ea628986..481b6df361 100644 --- a/server/src/main/java/com/vaadin/data/Binder.java +++ b/server/src/main/java/com/vaadin/data/Binder.java @@ -1282,7 +1282,15 @@ public class Binder implements Serializable { Result result = doConversion(); if (!isReadOnly()) { - result.ifOk(value -> setter.accept(bean, value)); + result.ifOk(value -> { + setter.accept(bean, value); + if (value != null) { + FIELDVALUE converted = convertToFieldType(value); + if (!field.getValue().equals(converted)) { + getField().setValue(converted); + } + } + }); } return toValidationStatus(result); } -- cgit v1.2.3