Как заставить Vaadin v8 обновлять экран?

У меня есть небольшое приложение Vaadin v8, которое имеет несколько полей ввода (comboboxes, selectgroups, etc...). Содержимое большинства из них определяется выбранным содержимым первого ComboBox. Однако, когда я выбираю что-то в нем, все остальные остаются пустыми, пока я не нажму на одно из них, после чего все они обновляются. Это нежелательное поведение, но я предполагаю, что оно вызвано тем, что серверная часть обновляется, но не обновляет представление на стороне клиента. (Даже при добавлении requestRepaint() в ValueChangeListener моего первого Combobox)

Должен быть какой-то метод, чтобы заставить Vaadin получить данные, которые я хочу, чтобы он отобразил, даже если никакие другие компоненты не нажаты?

EDIT Мне не разрешено размещать ответы на мой собственный вопрос так скоро, поэтому я временно размещаю его здесь:

Я нашел, что есть метод javascript, который синхронизирует клиент и сервер.

myComponent.getApplication().getMainWindow().executeJavaScript("javascript:vaadin.forceSync();");

Единственная проблема, которая у меня сейчас есть - это то, что ValueChangeListener на одном из моих комбобоксов по-прежнему срабатывает только тогда, когда я нажимаю на другой комбобокс (или один и тот же дважды). Это самое странное, потому что второй combobox, когда загружен, прекрасно запускает свое событие.

17
задан Johannes Rabauer 19 September 2019 в 12:42
поделиться