Control Module contains the following components:
1. Front Controller Servlet: Receive and handle each HTTP request that is not intercepted by servlet filters and forwards the request to the appropriate other control module. It includes the following components:
a. REQUESTPROCESSOR class: Map the requested URL to the appropriate action.
b. Web Controller: Forward Events into EJB Controller
c. Screen Flow Manager: Decided to handle one of the requests to display which page
2. EJB Controller: Converting Events to EJB Action
3. Servlet Filters: You can add some additional features before Front Controller
4. Template Service Servlet: Combine different resources form a display template
The process of processing is:
1. When an HTTP request is sent, you will be processed by one or more Servlet Filter classes (implemented Javax.Servlet.filter interface). Two such filter: EncodingFilter and Signonfilter are used in PetStore.
2. Then request to the Front Controller Servlet (MainServlet), the RequestProcessor class maps different requests URLs into different HTML Action classes (HTML Action class is achieved for com.sun.j2ee.blueprints.waf.Controller.Web.Action The class of .htmLAction interface, perform the corresponding business logic.
3. HTMLACTION may return an Event to RequestProcessor, which will be passed to the EJB Controller. Event is the class that implements com.sun.j2ee.blueprints.waf.event.event
4. EJB Controller is usually a session bean that creates and executes an EJBAction with data in Event, and the EJBAction may return an EventResponse. class.
5. After executing the business logic, the next page will be selected and displayed
flow chart: