If we want to look at the WebWork/Maverick approach of using a single input/command handler, where Struts has separate input and command handlers, why not add the said standard ExecuteFormAction and ExecuteForm subclass to the build and see how the community reacts?
After 1.2.0 rolls, we could add them to the nightly build and mark them experimental. When 1.2.1 comes around, we could then decide whether to leave them or pull them. If we decide to pull them, we can always start that toolkit on SourceForge, and let it live there.
Or, if the community likes the idiom, then in 2.x we could provide the ExecuteForm behavior without providing an Action to do it.
-Ted.
Don Brown wrote:
Yes, it is possible to do a lot of things with Struts currently, but for the most part, they are all hacks. With Struts 2.0, we have a chance to look at Struts best practices, other web frameworks, and current technologies to design Struts to be the best and easiest framework for web applications, and perhaps beyond. My point is we should look at whether to encourage through Struts design and documentation the combination of forms and actions, or keep the current design. In this process, I think it is important to look at other frameworks and the results of the design choices they made, particularly our close cousin WebWork2/XWork.
Don
On Sat, 20 Dec 2003, Ted Husted wrote:
Don Brown wrote:
Hmm...I'm not familiar with that discussion, but I don't see why general form functionality couldn't be defined in an interface, but the ActionForm left how it is. Of course we also have a chance to do what Craig said he'd change about Struts (at JavaOne 2003 JSF BOF) and combine forms and actions. WebWork2/XWork seems to have done well with that approach.
It's been mentioned on the list that you can combine Actions and ActionForms already. All that's needed is an ActionForm subclass with an execute property, and a standard Action that simply returns that result instead:
ExecuteForm ef = (ExecuteForm) form; return ef.execute(request,response,mapping,form);
-Ted.
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]