JavaServer Faces
Логотип программы JavaServer Faces
Тип Веб-фреймворк
Автор Sun Microsystems
Разработчик Sun Microsystems
Написана на Java
Операционная система Кроссплатформенное ПО
Аппаратная платформа Java Platform, Enterprise Edition
Последняя версия
Репозиторий github.com/eclipse-ee4j/…
Лицензия EPL-2.0[d] и GPL linking exception[d]
Сайт javaserverfaces.java.net
Логотип Викисклада Медиафайлы на Викискладе

JavaServer Faces (JSF) — это Java спецификация для построения компонентно-ориентированных пользовательских интерфейсов для веб-приложений, написанный на Java. Он служит для того, чтобы облегчать разработку пользовательских интерфейсов для Java EE-приложений. В отличие от прочих MVC-фреймворков, которые управляются запросами, подход JSF основывается на использовании компонентов. Состояние компонентов пользовательского интерфейса сохраняется, когда пользователь запрашивает новую страницу и затем восстанавливается, если запрос повторяется. Для отображения данных обычно используется JSP, Facelets, но JSF можно приспособить и под другие технологии, например XUL.

Технология JavaServer Faces включает:

Созданная быть гибкой, технология JavaServer Faces усиливает существующие стандартные концепции пользовательского интерфейса (UI) и концепции Web-уровня без привязки разработчика к конкретному языку разметки, протоколу или клиентскому устройству. Классы компонентов пользовательского интерфейса, поставляемые вместе с технологией JavaServer Faces, содержат функциональность компонент, а не специфичное для клиента отображение, открывая тем самым возможность рендеринга JSF-компонент на различных клиентских устройствах. Совмещая функциональность компонент интерфейса пользователя со специальными рендерерами, разработчики могут конструировать специальные теги для заданного клиентского устройства. В качестве удобства технология JSF предоставляет специфичный рендерер и специальную библиотеку JSP-тегов для рендеринга на HTML-клиенте, позволяя разработчикам приложений на J2EE платформе использовать технологию JSF в своих приложениях.

Версии JSF

Критика

JSF версий 1.* фактически не предоставлял высокоуровневой поддержки для обработки GET-запросов[4], что существенно усложняло разработку приложений, базирующихся на REST-принципах. Во второй версии спецификации этот недостаток практически полностью устранён.

Разработчик языка Java, Джеймс Гослинг, охарактеризовал технологию JSP, лежащую в основе JSF, как «проект-клон Microsoft ASP, который был создан, только чтобы продемонстрировать насколько сама подобная идея плоха; но модель почему-то отказалась умирать»[5].

Библиотеки и компоненты

Примечания

  1. Release 3.0.0 — 2020.
  2. Release 4.0.0 — 2022.
  3. Hans Bergsten. Improving JSF by Dumping JSP (англ.) (9 июня 2004). Дата обращения: 8 августа 2009. Архивировано из оригинала 22 февраля 2012 года.
  4. Andy Schwartz Blog: What’s new in JSF2? Дата обращения: 2 октября 2010. Архивировано 5 октября 2010 года.
  5. James Gosling on Apple, Apache, Google, Oracle and the Future of Java. 0:48:22. Дата обращения: 28 сентября 2017. Архивировано 22 апреля 2017 года.
  6. Домашняя страница RichFaces (англ.). Дата обращения: 1 апреля 2010. Архивировано из оригинала 22 февраля 2012 года.

Ссылки

Литература