JavaServer(TM) Faces technology simplifies building user interfaces for JavaServer applications. Developers of various skill levels can quickly build web applications by: assembling reusable UI components in a page; connecting these components to an application data source; and wiring client-generated events to server-side event handlers.
If you're new to JSF, start with the JSF2 DataSheet, then continue to read below.
With 1.x I exclusively used MyFaces as my JSF implementation, but from 2.0 on Mojarra is every bit as good. It's stable, fast and overal works great. My only complaint is the documentation. It's too technical and confusing (especially for new users). You HAVE to rely on third party books and websites (hint: BalusC). Otherwise, great project!
Unusable. Major bugs not fixed for more than a year. For example:
Too complicated and low performant for bigger traffic. Huge memory footprint, complicated integration with Spring and tons of other disadvantages
Help yourself, do not use.