The request processing lifecycle
JSF has a request-response processing lifecycle that is built around the HTTP protocol. JSF is built on top of the Java Servlet specification that takes care of translating the request user agent, which in the majority of the cases, is a web browser to a known endpoint. For JSF, the first port of call is javax.faces.webapp.FacesServlet
. This servlet will simply dispatch the incoming request to the controller, and this component can elect to generate a response or delegate the output to the internal JSF controller implementation.
There are three circumstances for JSF in the request processing lifecycle. The first is the invocation to the JSF controller with a Faces request, which ultimately generates a Faces response.
The second is a request to retrieve a resource such as a CSS or JavaScript file or image or some other media file. However, a Faces resource request, which does not require the execution of logic, causes the JSF framework to furnish the output...