Based on the discussions of
STR-2940 and the general trend of the industry, the correct place for a framework to support dispatching is not in the Action, but as part of the Controller. The Action can do anything it wants once it has the request, but the support belongs to the framework.
The following changes are proposed:
- Introduce a Dispatcher interface that accepts the current ActionContext and returns an Object
- Add @dispatch to the <action> element
- Either modify ExecuteAction or create subclass that executes the action by delegating to the Dispatcher interface
- Object is then marshalled into an ActionForward through a conversion process
- Retrofit ActionDispatcher with the interface