Continued....
The above diagram says:
-> FrontController acts like an Entry point.
-> It provides low level services with respect to RequestProcessing.
-> It manages the WorkerComponents(WC in fig) and also view components.
But in the above diagram we have another requirement like: if the number of WorkerComponents increases, again burden sits on the FrontController.
To overcome this type of issue, we go for another presentation tier design pattern named as ApplicationController. Using which we can modularize like set of WorkerComponents are managed by an ApplicationController.
Another ApplicationController can manage another set of WorkerComponents and so on.
The following diagram gives us an idea about the ApplicationController Design Pattern implemented.
In the above diagram we find FrontController taken part in providing only low Level services and the ApplicationController's responsibilities are ViewComponent management and WorkerComponent management.
The same is what we have with respect to Struts Architecture, where FrontController implemented component is termed as ActionServlet.
ApplicationController implemented component is termed as RequestProcessor.
CommandPattern implemented components are ActionComponents which we referred as WorkerComponents above.
Note: Struts is limited to Presentation Tier only.
Bye till next class


