What is JavaServer Faces?

JavaServer Faces (JSF) is a framework for developing Web applications. It simplifies the construction of user interfaces (UI) for server-based applications by enabling the assembly of reusable UI components in a page. JSF facilitates the connection of widgets to data sources and to server-side event handlers.

The JSF framework unifies techniques for simplifying Web application design and development by addressing the following Web application design and development concerns:

User interface development

JSF allows direct binding of user interface (UI) components to model data. It abstracts request processing into an event-driven model. Developers can use extensive libraries of prebuilt UI components that provide both basic and advanced Web functionality.

Navigation

JSF introduces a layer of separation between business logic and the resulting UI pages; stand-alone flexible rules drive the flow of pages.

Session and object management

JSF manages designated model data objects by handling their initialization, persistence over the request cycle, and cleanup.

Validation and error feedback

JSF allows direct binding of reusable validators to UI components. The framework also provides a queue mechanism to simplify error and message feedback to the application user. These messages can be associated with specific UI components.

Internationalization

JSF provides tools for internationalizing Web applications, supporting number, currency, time, and date formatting, and externalizing of UI strings.

JSF is easily extended in a variety of ways to suit the requirements of your particular application. You can develop custom components, renderers, validators, and other JSF objects and register them with the JSF runtime.

 

Related tasks

Developing Faces (JSF) applications

Enabling Faces technology in an existing Web application

Configuring JSF Web project preferences

Editing a Faces configuration file

Defining JWL source for content assist

Creating Faces enabled Web projects