Stable release | 2.0
/ June 28, 2009 |
---|---|
Written in | Java |
Operating system | Cross-platform |
Type | Web template system |
Website | facelets |
Stable release | 1.1.15
/ November 24, 2009 |
---|---|
Preview release | 1.2-dev
/ November 10, 2006 |
Written in | Java |
Operating system | Cross-platform |
Size | 5.07 MB (archived) |
Type | Web template system |
License | Apache License 2.0 |
Website | facelets |
In computing, Facelets is an open-source Web template system under the Apache license and the default view handler technology (aka view declaration language) for Jakarta Faces (JSF; formerly Jakarta Server Faces and JavaServer Faces). The language requires valid input XML documents to work. Facelets supports all of the JSF UI components and focuses completely on building the JSF component tree, reflecting the view for a JSF application.
Although both JSP and Faces technologies have been improved to work better together, Facelets eliminates the issues noted in Hans Bergsten's article "Improving JSF by Dumping JSP"[1]
Facelets draws on some of the ideas from Apache Tapestry,[2][3] and is similar enough to draw comparison. The project is conceptually similar to Tapestry's, which treats blocks of HTML elements as framework components backed by Java classes. Facelets also has some similarities to the Apache Tiles framework with respect to support templating as well as composition.
Facelets was originally created by Jacob Hookom in 2005[3] as a separate, alternative view declaration language for JSF 1.1 and JSF 1.2 which both used JSP as the default view declaration language. Starting from JSF 2.0, Facelets has been promoted by the JSF expert group to be the default view declaration language. JSP has been deprecated as a legacy fall back.[4][5]
The expert group decided to move forward with Facelets as the basis for new features while letting JSP remain as a backward compatibility layer.
Facelets is a replacement for JSP that was designed from the outset with JSF in mind. New features introduced in version 2 and later are only exposed to page authors using Facelets. JSP is retained for backwards compatibility.