Um componente de software que você pode usar na construção de interfaces do usuário das suas aplicações Web. O componente pode ser visual, tal como um botão ou uma lista suspensa, ou não-visual, tal como um validador ou conversor de dados. A tecnologia JavaServer Faces permite que você monte esses componentes de IU em uma página, conecte os componentes a um banco de dados ou serviço Web, e vincule eventos gerados pelo cliente aos manipuladores de eventos do lado do servidor. Uma interface do usuário criada com a tecnologia JavaServer Faces pode manipular toda as complexidades do gerenciamento da interface do usuário, incluindo a validação de entrada, o gerenciamento do estado do componente, a navegação e a manipulação de eventos.