Фреймворки веб-форм в Java - PullRequest
       8

Фреймворки веб-форм в Java

4 голосов
/ 20 декабря 2011

Каковы обычно используемые способы создания веб-форм в Java и Groovy?

Spring и Grails предоставляют соответствующие теги-теги, но мне интересно, существуют ли каркасы форм, которые позволяют создавать формы как наборы объектов,динамически манипулировать элементами, вставлять подформы, заполнять и проверять, а также визуализировать.

Например, если у меня есть группа полей, общих для нескольких форм, я хотел бы повторно использовать код.Кроме того, такая группа элементов, в свою очередь, может входить в состав другой группы.Я также хотел бы динамически переупорядочивать элементы, изменять имена полей и другие атрибуты полей ввода и т. Д. Без изменения какого-либо HTML-кода.

Ответы [ 3 ]

1 голос
/ 04 октября 2014

Вы можете попробовать с открытым исходным кодом Библиотека Formio . Он может использоваться во многих средах / инфраструктурах и с различными шаблонными структурами.

С помощью Formio вы можете манипулировать формами с помощью объектов: создавать определения форм - отображения, определения полей форм и вложенные отображения (для вложенных объектов, таких как адрес человека или список адресов). Оба отображения и поля формы могут быть определены как повторно используемые (неизменяемые) объекты и составлены вместе. Вы можете использовать вложенные отображения для моделирования многократно используемых «групп» полей формы (и для их вложения в другие группы).

Formio поддерживает привязку данных из объекта Java к определению формы, которое затем может быть передано в шаблон и обработано. Данные из запроса могут быть проверены (с использованием API проверки бина) и привязаны к объекту Java (к вновь созданному экземпляру или к предоставленному). Поддерживается связывание базовых типов Java, типов вложенных объектов, коллекций или массивов (примитивов или сложных объектов). Могут использоваться неизменные классы.

Определение формы может быть предварительно заполнено данными (перед передачей в шаблон) и заполнено (подтверждено) данными из запроса. Автоматическое связывание двунаправленных данных реализовано в методах «fill» и «bind» объекта определения формы.

Formio - это серверно-ориентированная библиотека, но ее можно комбинировать с существующими клиентскими библиотеками. Рендеринг оставлен системе шаблонов. Например, используя JSP, вы можете подготовить свои собственные повторно используемые теги для отображения определения формы, заполненного данными и их частями (вложенные отображения, различные типы полей формы), которые уже содержат все необходимые данные для отображения, в том числе такие флаги, как видимый, включенный, только для чтения, требуется. Вы можете определить свои собственные атрибуты настраиваемых полей и использовать их в повторно используемых тегах / фрагментах шаблона, чтобы в большинстве случаев код HTML не нужно было изменять.

Примечание: я являюсь автором библиотеки, вы можете найти исходники на GitHub и сделать свой форк. Проверьте документацию для получения более подробной информации.

0 голосов
/ 06 декабря 2012

Я не сталкивался с платформой MVC, которая предоставляла бы полный интерфейс для обработки данных формы как объектов, обоими способами.Всегда есть какое-то ручное кодирование, необходимое для преобразования данных формы в объекты и обратно.

Существуют альтернативные среды, такие как Echo (http://echo.nextapp.com/site/), которые полностью изолируют приложение от обработки запросов и ответов, онибольше подходит для той абстракции, которую вы ищете.

0 голосов
/ 20 декабря 2011

То, что вам нужно, это шаблонизатор / структура макета, которая позволит вам повторно использовать фрагменты кода.

В пространстве java web dev, Tiles является де-факто структурой для макетов. Как Grails, так и Spring MVC поддерживают Tiles.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...