ICEfaces 2 is an open-source Rich Internet Application (RIA) development framework based on the JavaServer Faces (JSF) 2 standard. Like its predecessor, ICEfaces 1.8, ICEfaces 2 extends JSF to simplify development and enhance the standard JSF feature set - simultaneously improving developer efficiency and expanding the spectrum of RIA capabilities that can be included in any JSF-based web application. ICEfaces ICEfaces 2 provides some key feature enhancements over JSF 2, while inheriting all the new features available in JSF 2. Open Source

The term open source describes practices in production and development that promote access to the end product's source materials. Some consider open source a philosophy, others consider it a pragmatic methodology. Before the term open source became widely adopted, developers and producers used a variety of phrases to describe the concept; open source gained hold with the rise of the Internet, and the attendant need for massive retooling of the computing source code. Opening the source code enabled a self-enhancing diversity of production models, communication paths, and interactive communities. Subsequently, the new phrase "open-source software" was born to describe the environment that the new copyright, licensing, domain, and consumer issues created.

Java Server Faces

JSF 2 brings many beneficial features over JSF 1.2. There is a wealth of JSF 2 documentation available on-line, but the high points are enumerate below.

- Facelets is now a first-class citizen of the JSF spec, and is the principle view declaration language in JSF 2.
- A comprehensive composite component model enables easy development of components using only markup.
- Ajax request processing and partial page updates have been incorporated into the JSF lifecycle.
- Partial State Saving drastically reduces state saving overhead.
- Broader support for system events is available.
- Improved navigation support includes implicit, conditional and preemptive navigation.
- HTTP GET now fully supported in the JSF lifecycle.
- New scopes, and support for custom scopes (see ICEfaces Window Scope).
- Annotations simplify configuration.
- Standardized resource loading is provided.
- Exception handling has been improved.