Below is a quote from the
Struts Newbie FAQ written by the Struts authors that addresses this topic:
As a rule, chaining Actions is not recommended. If your business classes are properly factored, you should be able to call whatever methods you need from any Action, without splicing them together into a cybernetic Rube Goldberg device.
For those not familiar with it, a Rube Goldberg device is clever and complicated machine that accomplishes no practical work.
I believe the important point here is elegance of code structure. The above passage is just pointing out that yes, you can chain actions, but it's not a very elegant solution.
An Action class belongs in the controller space of Model/View/Controller architecture, and as such it shouldn't contain business logic, but rather commmunicate with other objects that do contain business logic. If you find that you must use action chaining in order to make a process work, it's because you've broken this rule and put business logic in your action class.
My answer to Arulanand's challenge is that the logic to prepare for the view of a specific
JSP should be placed in a Business Delegate class, rather than an Action class. Then whatever action needs to display that particular JSP should call the Business Delegate method and then forward to the JSP rather than chaining to a view action.