4.5.8.1. Работа с компонентами Vaadin
Для работы непосредственно с компонентами Vaadin, реализующими интерфейсы библиотеки визуальных компонентов в блоке Web Client, необходимо воспользоваться классом WebComponentsHelper. Он имеет два статических метода для получения ссылок на компоненты Vaadin:
-
unwrap- получить Vaadin-компонент для данного CUBA-компонента. -
getComposition- получить Vaadin-компонент, который является наиболее внешним контейнером в реализации данного CUBA-компонента. Для простых компонентов, например Button, этот метод возвращает тот же объект, что иunwrap()-com.vaadin.ui.Button. Для сложных компонентов, например Table,unwrap()вернет соответсвующий объектcom.vaadin.ui.Table, аgetComposition()- объектcom.vaadin.ui.VerticalLayout, который содержит таблицу вместе с описанными вместе с ней ButtonsPanel иRowsCount.
Следует иметь в виду, что если экран расположен в модуле gui проекта, то в его контроллере можно работать только с обобщенными интерфейсами CUBA-компонентов. Чтобы использовать WebComponentsHelper.unwrap() нужно либо расположить весь экран в модуле web, либо воспользоваться механизмом компаньонов контроллеров.