As very briefly described in the MVC section, a Woof! application processes a client request as follows:
- A request object is created that encapsulates the received request with request parameters, cookies and other attributes extracted.
- A response object is created to hold the response to be sent back to the client, including the page content, cookies, and HTTP headers.
- A session context of the request is retrieved with a new session being created if no context is associated with the request.
- The URL received in the client request is mapped to an appropriate controller class and method (action).
- The method is invoked to carry out the client request.
- If the action method did not itself generate the page content, the default page rendering code is invoked to locate and process a suitable page template.
- The response and page content is sent back to the client.
The rest of this chapter describes this process in detail except for the generation of page content which is described in the Page generation chapter.