JavaServer Pages (JSP) is a Java technology that allows software
developers to dynamically generate HTML, XML or other types of
documents in response to a Web client request.
JavaServer Faces (JSF) is a Java-based Web application framework
that simplifies the development of user interfaces for Java EE
applications. Out of the box, JSF uses JavaServer Pages for its
display technology, but JSF can also accommodate other display
technologies, such as XUL, for example.