JavaServer Faces (Faces) es una tecnología que permite construir páginas JSP que contengan componentes de interfaz de usuario preconstruidas (componentes Faces). Las páginas JSP que tienen componentes de Faces se pueden incluir en aplicaciones Web o portlets. Hay una biblioteca de códigos personalizados JSP para dar soporte al uso de los componentes Faces.
Por omisión, al archivo JSP también se añaden los componentes de Faces adecuados para los tipos de datos que se añaden. Estos componentes Faces se enlazan al origen de datos definido. Por ejemplo, una tabla de datos se puede añadir a una página portlet poniendo propiedades de bean desde la vista Datos de página.