Dear Wiki user,

You have subscribed to a wiki page or wiki category on "Struts Wiki" for change 
notification.

The following page has been changed by FrankZammetti:
http://wiki.apache.org/struts/Action1RoughSpots

New page:
The purpose of this page is for people, anyone, to post their thoughts on what 
they would like to see happen in Struts Action1 framework (that is, the 
non-Webwork, non-Shale version of Struts).  As the name implies, it should be a 
list of current "rough spots".

  * '''Per-request Action instantiation'''  [FrankZ] Actions should be 
instantiated for each request, therefore removing the thread safety concerns 
that exist today.

  * '''Pure POJO !ActionForms'''  [FrankZ] An !ActionForm should not need to 
extend !ActionForm.  The framework would have to be smart enough to not call 
validate() and such in that case.  This would allow for the Action to be the 
!ActionForm as well, and this is really the underlying goal because many people 
view them being separate as a rough spot.

  * '''Built-in AJAX support'''  [FrankZ] I am not entirely sure what the best 
form for this is, although I believe the !AjaxTags paradigm still has a great 
deal of merit.  In any case, in today's world, not offering some degree of AJAX 
out of the box is probably a rough spot for many.

  * '''Custom attributes on tags'''  [FrankZ] All Struts tags that render HTML 
should allow for arbitrary attributes.  I again propose a "specCompliant" 
attribute on the <html:html> tag.  When true, no arbitrary attributes are 
allowed (this would be the default if the attribute is not present).  If false, 
any attribute can be added.  This has been a hassle for me a couple of times 
where I wanted to store some custom information on a tag for client-side 
purposes.

  * '''The ability to switch off auto-form population'''  [FrankZ] The idea 
here is that Struts would still instantiate an !ActionForm and call reset(), 
but that's it.  This can be useful if you want to use an !ActionForm only as an 
output object, but want to handle input manually.  This came up for me 
converting a non-Struts app to Struts, where there was no notion of an 
!ActionForm in the previous framework.

  * '''Built-in dependency injection''' [FrankZ] This should be modeled after 
what is offered in JSF.  If we took the code from the !DependencyFilter in Java 
Web Parts, added in true injection (shouldn't be a terribly big deal), I 
believe we would have even better capabilities than in JSF.  Spring is of 
course still out there for those that need/want more!  This may not be so much 
a rough spot as just a fairly low-hanging piece of fruit (because most of the 
work is already done by virtue of leveraging !DependencyFilter) that I think 
people would appreciate having.

  * '''!ThreadLocal !ActionContext''' [FrankZ] Yes, I think this is one place 
we should flat-out rip off Webwork :)  Backwards-compatibility would have to be 
considered, but I'd like Actions to have to deal with a single object, and for 
that object to be accessible via the !ThreadLocal mechanism.  This should also 
open the door for POJO Actions.

  * '''Built-in support for RAP (Redirect After Post) pattern''' [FrankZ] I'm 
not sure how best to accomplish this, but this should be a very easy thing for 
a developer to do, the framework should do any required heavy lifting.  Again, 
not so much a rough spot as it is something I think a lot of people would 
appreciate.

  * '''Pre and post-processing abilities''' [FrankZ] A developer should be able 
to specify a class and method to call before and after an Action executes, on a 
per-mapping basis.  This should be independant of modifying a chain.  Should 
just amount to adding the appropriate config file changes and two commands to 
the default chain.  This is for handling things like common setup of view-type 
Actions, etc.

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to