В Vaadin 8 дано следующее определение сетки:
grid = new Grid<>();
grid.getEditor().setEnabled(true);
carBinder = grid.getEditor().getBinder();
с участием:
grid.getEditor().addSaveListener(event -> {
try {
Binder<Car> binder = event.getSource().getBinder();
grid.getDataProvider().refreshAll();
} catch(Exception e)
ExceptionNotification.show(e);
}
});
У меня есть проблема: в настоящее время я не могу получить доступ к измененному значению из редактора сетки, ни через event.getSource (), ни через связыватель, определенный локально или в области класса.
В отладчике я вижу в классе Vaadin com.vaadin.ui.components.grid.EditorImpl свойство, отредактированное, содержащее значения, но частное, поэтому недоступное.
В отладке значение binder.bean равно ПУСТО (NULL). Это будет значение, полученное с помощью: binder.getBean ().
Итак, я пробовал много способов, но в настоящее время я не мог получить отредактированное значение с помощью слушателя сохранения для работы с ним и поискать помощь или вдохновение для решения проблемы.
binder.writeBean(aCarObject)
получить значения? Согласно документации, он записывает значения полей в данный объект, но выдает исключение, если какое-либо из полей недействительно. - person Axel Meier   schedule 28.02.2017