This week's book giveaway is in the OO, Patterns, UML and Refactoring forum. We're giving away four copies of Refactoring for Software Design Smells: Managing Technical Debt and have Girish Suryanarayana, Ganesh Samarthyam & Tushar Sharma on-line! See this thread for details.
In struts 1.x the execute(ActionForm form,ActionMapping map,Htt...) as this signature. When the request is originated the struts framework will use reflectionAPI concept and populate the form bean then the request if forwarded to Action class for processing now the execute method has form bean object passed. Passing of the form object is it based on command pattern? or any other pattern?
I guess its Command pattern; similar functionality is provided by the spring where we actually set the command object(formbean) using setCommand(ActionForm). Please correct me if i am wrong.
Well, first thing is where does the Action class fit in M'VC' pattern, which is always debatable and out of scope for now.
To me, Undoubtedly ActionServlet is front controller pattern.
If you say that "Action Class" is part of Controller then,
To me, I see Struts Action class to follow more of "Service to Worker pattern" wherein using "struts-config" is "Command pattern" and using Tiles is "Composite View pattern". This is due to action class which does little bit more to call the business layer (if any) and other business logic for validations etc.
If you say that Actions is part of View then,
To me, I see Struts Action class to follow more of "Dispatching View pattern". Since here, action class is still responsible to receive the request and process it provide the response with less amount of business logic processing.
Again, this is my perspective any objections are welcomed
Have Fun with Java
little,little.. little by little makes a lot..