Skip to main content

Eclipse Faces

Eclipse Faces is the open-source implementation of Jakarta Faces (formerly JavaServer Faces), a server-side user interface framework (web application framework) for building component-based Java web applications, developed under the Eclipse EE4J project Mojarra and governed by the Eclipse Foundation.

  • Reference implementation of Jakarta Faces (web application framework) for server-side UI component rendering.
  • Supports component-based MVC-style web application development in the Jakarta EE platform (enterprise application platform).
  • Provides lifecycle management for UI components, including request processing, validation, conversion, and navigation (web framework runtime).
  • Integrates with Facelets view technology for building views with XHTML templates and reusable components (templating and view layer).
  • Operates within Jakarta EE-compatible application servers and servlet containers (enterprise Java runtime integration).

More About Eclipse Faces

Eclipse Faces is the implementation of the Jakarta Faces (formerly JavaServer Faces) specification maintained in the Eclipse EE4J Mojarra project and hosted under the Eclipse Foundation, and it is used as a server-side web application framework (web application framework) for building component-based user interfaces in Java.

The project operates within the Jakarta EE (enterprise application platform) ecosystem, providing the Jakarta Faces implementation that application servers use to support UI development based on a component and event model. It enables developers to bind UI components to server-side managed beans, handle events, and manage navigation and validation through a defined lifecycle that processes incoming Hypertext Transfer Protocol (HTTP) requests and produces HTML responses.

Core capabilities of Eclipse Faces include a UI component model (presentation layer framework) where pages are composed of component trees, a request-processing lifecycle (web framework runtime) that handles restore view, apply request values, process validations, update model values, invoke application, and render response phases, and integration with Facelets (templating and view layer) as the primary view definition language using XHTML-based templates. These capabilities align with the Jakarta Faces specification published under the Jakarta EE umbrella.

In enterprise environments, Eclipse Faces operates inside Jakarta EE-compliant application servers and servlet containers (application server integration). It interoperates with other Jakarta EE technologies such as Jakarta Servlet, Jakarta Expression Language, and component models such as CDI where supported by the runtime. Organizations use it to implement form-based data entry, navigation flows, and component libraries that encapsulate common UI patterns on server-side Java stacks.

The project is developed under the Eclipse EE4J umbrella and follows the processes and governance of the Eclipse Foundation (open-source governance). It is positioned as the Jakarta Faces implementation for Jakarta EE and therefore fits into categories such as web frameworks, presentation frameworks, and enterprise Java platform components.

From a technical and operational viewpoint, Eclipse Faces provides a specification-aligned implementation that vendors can integrate into their application servers and that enterprises can rely on when targeting the Jakarta Faces Application Programming Interface (API). Its use of a well-defined lifecycle and component model supports structured UI development on the server side, while its integration into the Jakarta EE platform enables consistent configuration, deployment, and management alongside other Jakarta EE technologies.