JavaServer Faces
JavaServer Faces (JSF) is a Java specification for building component-based user interfaces for web applications. It was formalized as a standard through the Java Community Process and is part of the Java Platform, Enterprise Edition.
JSF 2 uses Facelets as its default templating system. Other view technologies such as XUL can also be employed. In contrast, JSF 1.x uses JavaServer Pages (JSP) as its default templating system.
History
In 2001, the original Java Specification Request (JSR) for the technology that ultimately became JavaServer Faces proposed developing a package with the name javax.servlet.ui
By June 2001, JavaWorld would report on Amy Fowler's team's design of "the JavaServer Faces API" (aka "Moonwalk") – "an application framework for creating Web-based user interfaces".
Versions
JSF 2.2 (2013-05-21) – Introduced new concepts like stateless views, page flow and the ability to create portable resource contracts.
JSF 2.1 (2010-11-22) – Maintenance release 2 of JSF 2.0. Only very minor amount of specification changes.