Ответ 1
Если вы хотите сходить с ума от jQuery в Java, то скорее посмотрите на MVC-среду с запросом/действием, например Struts 1.x, Spring MVC, Stripes или Play и т.д. Из них Spring MVC является IMHO самым достойным.
Структуры MVC на основе компонентов, такие как JSF, Struts 2.x, Wicket, Echo, GWT и т.д. позволяет менее мелкозернистый контроль над выходом. Вы должны сделать некоторые конкретные хаки/обходные пути, чтобы позволить jQuery легко взаимодействовать с деревом компонентов на стороне сервера. Например, включение флажка с отключенным HTML с помощью $('#elementid').attr('disabled', false)
недостаточно. Вы должны как-то сообщать стороне сервера об изменении состояния представления, в противном случае он все еще считает, что он отключен и, таким образом, не будет применять/обрабатывать любой представленный параметр запроса.
В некоторых из них особенно используются библиотеки компонентов JSF, такие как PrimeFaces и RichFaces, jQuery (UI) интегрирован как часть look'n'feel и/или выполняет "работы Ajax". В PrimeFaces, например, jQuery UI accordion реализуется как <p:accordionPanel>
. В RichFaces существует даже специальный компонент для запуска jQuery-функций и обновления состояния на стороне сервера, <rich:jQuery>
.
В целом, MVC-структура, основанная на запросе/действии, является лучшим выбором, если вы хотите полную свободу jQuery. Основанная на компонентах инфраструктура MVC, которая предлагает библиотеки с интегрированным jQuery, является достаточным выбором, если вам необязательно иметь 100% -ную свободу на стороне клиента.