3.5.18. Инфраструктура Generic UI
В данном разделе рассмотрены основные классы инфраструктуры Generic UI, которые могут быть расширены в приложении.
-
AppUI
- класс, унаследованный отcom.vaadin.ui.UI
. Экземпляр данного класса соответствует одной открытой вкладке веб браузера. Содержит ссылку на реализацию интерфейсаRootWindow
- это может быть либо окно логина, либо главное окно приложения, в зависимости от состояния подключения. Ссылку наAppUI
можно получить вызовом статического методаAppUI.getCurrent()
.Для кастомизации функциональности
AppUI
в проекте, создайте класс, расширяющийAppUI
в модуле web и зарегистрируйте его в web-spring.xml с идентификаторомcuba_AppUI
иprototype
scope, например:<bean id="cuba_AppUI" class="com.company.sample.web.MyAppUI" scope="prototype"/>
-
Connection
- интерфейс, обеспечивающий функциональность подключения к среднему слою и хранящий пользовательскую сессию UserSession. Стандартной реализацией этого интерфейса является классConnectionImpl
.Для кастомизации функциональности
Connection
в проекте, создайте класс, расширяющийConnectionImpl
в модуле web и зарегистрируйте его в web-spring.xml с идентификаторомcuba_Connection
иvaadin
scope, например:<bean id="cuba_Connection" class="com.company.sample.web.MyConnection" scope="vaadin"/>
-
ExceptionHandlers
- содержит коллекцию обработчиков исключений клиентского уровня. -
App
позволяет получить ссылки наConnection
,ExceptionHandlers
и другие объекты инфраструктуры. ЭкземплярApp
существует в единственном экземпляре для данной HTTP-сессии пользователя. Ссылку наApp
можно получить вызовом статического методаApp.getInstance()
.Если необходимо кастомизировать функциональность
App
в проекте, создайте класс, расширяющийDefaultApp
в модуле web и зарегистрируйте его в web-spring.xml с идентификаторомcuba_App
иvaadin
scope, например:<bean name="cuba_App" class="com.company.sample.web.MyApp" scope="vaadin"/>