- Facelets
-
Facelets Тип Веб-фреймворк
Написана на Операционная система Последняя версия Тестовая версия Лицензия Apache License 2.0
Сайт 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>
Примечания
Литература
- 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
- Zubin Wadia, Bruno Aranda Facelets Essentials: Guide to JavaServer Faces View Definition Framework. — 1st. — Apress, May 26, 2008. — P. 84. — ISBN 978-1430210498
- Robert Swarr Facelets. — 1st. — O'Reilly Media, June 2009. — P. 101. — ISBN 978-0-596-55927-4, 0-596-55927-5
Ссылки
Веб-фреймворки ASP.NET DotNetNuke • ASP.NET MVC • MonoRail
ColdFusion ColdSpring • Fusebox • Mach-II • Model-Glue
Java Apache (Cocoon • Struts • Velocity • WebWork 2) • AppFuse • Aranea • Eclipse • Facelets • Flexive • FreeMarker • Google Web Toolkit • Grails • Hamlets • ItsNat • JavaServer Faces • Jspx • JBoss Seam • jZeno • Makumba • OpenLaszlo • OpenXava • Reasonable Server Faces (RSF) • Restlet • RichFaces • RIFE • Shale • SmartClient • Spring • Stripes • Tapestry • ThinWire • Vaadin • WebMacro • WebWork • WebObjects • Wicket • ZK
JavaScript node.js • AJILE • Clean AJAX • Dojo Toolkit • Echo • Ext JS • jQuery • jMaki • Microsoft AJAX Library • MochiKit • MooTools • Prototype • qooxdoo • Rialto Toolkit • Rico • script.aculo.us • SmartClient • Spry • SproutCore • Yahoo! UI Library • Underscore • PhoneGap
Perl Catalyst • Interchange • Titanium • Maypole • HTML:Mason
PHP Acode • Akelos • BlueShoes • CakePHP • Canvas • CodeIgniter • DIY • Drupal • Fuse • Horde • Kohana • LiveStreet • PHP For Applications • PHPOpenbiz • PRADO • Qcodo • Seagull • Solar • Symfony • W3Core • Yii • Zend • Zoop • Joomla
Python CherryPy • Django • GAE framework • Karrigell • Nevow • Porcupine • Pylons • Pyramid • Spyce • TurboGears • Twisted • Tornado • Webware • Zope
Ruby Camping • Nitro • IOWA • Ramaze • Cerise • Merb • Ruby on Rails • Sinatra • Padrino
Прочие
языкиAlpha Five • Fusebox (ColdFusion • PHP) • Helma Object Publisher (Server-side) • Lift (Scala) • Magic (Scheme) • OpenACS (Tcl) • Seaside (Smalltalk) • UnCommon Web (Common Lisp) • Yaws (Erlang) • Oracle Application Express (PL/SQL)
Категории:- Программное обеспечение по алфавиту
- Каркасы веб-приложений на Java
- Java Enterprise Edition
- Программное обеспечение с лицензией Apache Software License
- Свободное программное обеспечение, написанное на Java
Wikimedia Foundation. 2010.