Facelets

Материал из Википедии — свободной энциклопедии
Перейти к: навигация, поиск
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). Фреймворк требует для функционирования валидные XML документы. Это означает, что веб-страницы должны быть созданы с использованием языка разметки XHTML. Facelets поддерживает все компоненты JSF и создаёт собственное дерево компонент, отражая view (см. MVC) для JSF-приложения. В Facelets полностью устранена широко известная проблема смешанного контента, присущая JavaServer Pages.

Пример[править | править исходный текст]

Данный пример иллюстрирует использование 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>

Примечания[править | править исходный текст]

Литература[править | править исходный текст]

Ссылки[править | править исходный текст]