Facelets

Тип |  Веб-фреймворк
Написана на |  Java
Операционная система |  Кроссплатформенное ПО
Последняя версия |  1.1.15 (24 ноября 2009)
Тестовая версия |  1.2-dev (10 ноября 2009)
Лицензия |  Apache License 2.0
Сайт |  facelets.java.net

Facelets — открытый веб-фреймворк, распространяемый под лицензией Apache license. Технология управления представлением для JavaServer Faces (JSF), альтернатива технологии JavaServer Pages (JSP). Фреймворк требует для функционирования валидные XML документы. Это означает, что веб-страницы должны быть созданы с использованием языка разметки XHTML. Facelets поддерживает все компоненты JSF и создаёт собственное дерево компонент, отражая view (см. MVC) для JSF-приложения. В Facelets полностью устранена широко известная проблема смешанного контента, присущая JavaServer Pages.

## Содержание

* 1 Пример
* 2 Примечания
* 3 Литература
* 4 Ссылки

## Пример[править | править код]

Данный пример иллюстрирует использование XHTML шаблона для задания алиасов компонент. Атрибут `jsfc` используется для указания JSF-компонента, на который будет заменён соответствующий тег при компиляции. Аналогичный подход используется в Tapestry с использованием атрибута `jwcid`. Facelets гораздо проще Apache Tiles[en] и поддерживает шаблонизацию страниц так же хорошо как и композицию. Версия JavaServer Faces 2.0 подверглась большому влиянию со стороны Facelets, ожидается что Facelets станет частью стандарта JSR 314[1].

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0
Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:h="http://java.sun.com/jsf/html">
<body>
<form jsfc="h:form">
<span jsfc="h:outputText" value="Willkommen #{loggedInUser.name}"
disabled="#{empty loggedInUser}" />
<input type="text" jsfc="h:inputText" value="#{bean.property}" />
<input type="submit" jsfc="h:commandButton" value="OK" action="#{bean.doSomething}" />
</form>
</body>
</html>

Приведённый выше код может быть просмотрен в браузере и отредактирован с помощью WYSIWYG инструментов. Это невозможно для стандартных страниц JSF 1.2. Соответствующий код JSF страницы приведён ниже для сравнения.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0
Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:h="http://java.sun.com/jsf/html">
<body>
<h:form>
<h:outputText value="Willkommen #{loggedInUser.name}" disabled="#{empty loggedInUser}" />
<h:inputText value="#{bean.property}" />
<h:commandButton value="OK" action="#{bean.doSomething}" />
</h:form>
</body>
</html>

## Примечания[править | править код]

1. ↑ JSR 314 (англ.)

## Литература[править | править код]

* Zubin Wadia, Martin Marinschek, Hazem Saleh, Dennis Byrne. The Definitive Guide to Apache MyFaces and Facelets. — 1st. — Apress, September 22, 2008. — P. 400. — ISBN 978-1590597378. Архивная копия от 2 января 2010 на Wayback Machine
* Zubin Wadia, Bruno Aranda. Facelets Essentials: Guide to JavaServer Faces View Definition Framework. — 1st. — Apress, May 26, 2008. — P. 84. — ISBN 978-1430210498. Архивная копия от 8 января 2010 на Wayback Machine
* Robert Swarr. Facelets. — 1st. — O'Reilly Media, June 2009. — P. 101. — ISBN 978-0-596-55927-4, 0-596-55927-5.

## Ссылки[править | править код]

* Facelets Home Page
* Facelets compared to Tiles
* Facelets Developer Documentation (недоступная ссылка)

int main()

printf("Hi");
return 0;

Это заготовка статьи о программировании. Помогите Википедии, дополнив её.

|