Как динамически генерировать компоненты vaadin в представлении vaadin

У меня очень новое требование, и мне нужно знать, можно ли достичь этого с помощью vaadin или нет.

Члены моей команды уже разработали одну функциональность, используя jquery и jsp вместе с Spring в качестве бэкэнда. Неожиданно для разработки пользовательского интерфейса появился vaadin.

Функциональность: Администратор имеет полный доступ ко всем модулям. Пользователь-администратор может добавлять компоненты из пула компонентов в какой-либо другой модуль. Эти настройки можно сохранить в db. Позже, когда я попытался получить доступ к этому модулю. Мне должны быть доступны только эти компоненты (компоненты, выбранные администратором). В этом случае автоматически создается один jsp с компонентами, выбранными администратором, и он будет включен в другой jsp, который является пользовательским jsp.

У меня вопрос: может ли vaadin выполнить это требование?


person Sudheer Kumar    schedule 13.08.2014    source источник
comment
Как вы относитесь к названию вашего вопроса и его описанию (может быть мой плохой английский)? Я не могу представить, в чем твоя проблема. Вы имеете в виду аутентификацию, авторизацию или пользовательские интерфейсы на основе ролей?   -  person Cataclysm    schedule 13.08.2014
comment
@Cataclysm Мой вопрос не об аутентификации, авторизации или ролевой базе. Его о. Может ли сервер создавать и возвращать компоненты Vaadin клиенту? Извините за мой плохой английский   -  person Sudheer Kumar    schedule 13.08.2014
comment
Я нашел аналогичный вопрос stackoverflow.com/questions/9007389/ здесь. Там кто-то предложил с ваадином добиться этого. Я не знаю, как это сделать.   -  person Sudheer Kumar    schedule 13.08.2014
comment
Я хотел бы предложить ознакомиться с архитектурой vaadin. GWT - на стороне клиента, Vaadin - на стороне сервера. Итак, результаты БД у вас на руках, а компоненты Vaadin также находятся на стороне сервера. Что вы должны сделать ? Пожалуйста, проверьте Интеграция на стороне сервера для создания пользовательских компонентов.   -  person Cataclysm    schedule 13.08.2014
comment
Я не спрашиваю о кастомных компонентах. например: у меня 2 просмотра. одно представление - представление пользователя, другое - представление встречи. Первый администратор войдет в приложение. Тогда он будет в классе просмотра пользователя. Будет один флажок (если он проверит это, выбранные компоненты будут перенесены в это представление (встречу)). Есть одно раскрывающееся окно со всеми именами полей (флажок, текстовое поле и т. Д.). Как только он выберет один компонент из раскрывающегося списка, этот компонент будет создан автоматически и добавлен в представление (представление встречи) во время выполнения. Таким образом, он может выбирать любой компонент любое количество раз.   -  person Sudheer Kumar    schedule 13.08.2014
comment
Хотели бы вы сделать то же, что и Tiles?   -  person Cataclysm    schedule 13.08.2014
comment
Да, именно так, но в случае плиток эти заголовок, нижний колонтитул и тело должны быть доступны уже для включения в основной jsp. Но здесь компонент (например, текстовое поле) должен быть создан автоматически и перенесен в другое представление.   -  person Sudheer Kumar    schedule 13.08.2014


Ответы (1)


Создайте один класс пользовательского интерфейса (в GWT аналогично EntryPoint) и создайте верхний колонтитул, нижний колонтитул, левую, правую сторону и т. Д.
И создайте представления по своему усмотрению (например: userView, adminView). Добавьте представление по умолчанию в основной контент класса UI. Инициализировать навигатор для навигации по страницам. Когда URL-адрес был изменен или вызван каким-либо запросом, навигатор должен управлять относительным содержимым тела. Пожалуйста, проверьте Использование пользовательского интерфейса по сравнению с навигатором + представлениями для дальнейшего пользовательского интерфейса, Просмотры и навигация.

Вот пример и примеры кодов. Если вы хотите создать как компонент, можно использовать композицию.

person Cataclysm    schedule 13.08.2014