Here's my list:
- Collapse XWork into Struts
- Rewrite XWork to be a servlet workflow engine and less abstract (i.e.
remove thread locals and contexts)
- Fix nasty circular XWork injections and setter injections
- Generics
- Update all public APIs no matter how infrequently used and then hard
API freeze until 4.0 (assuming all this work would be 3.0)
- Rewrite tags with better support for writing new/custom tags inside
apps and other frameworks
- Rewrite XWork container with Guice 2.0 (once released)
- Drop OGNL in favor of a UEL that supports type conversion (nothing
does this really well quite yet)
- Make actions easier to write (no getters/setters, support Groovy,
support reloading)
- Make form prepare better and reusable across actions and results
- Support real code-behind that reuses actions to display and submit a
form and distinguishes between GET and POST with no coding
- Rewrite all docs top down to cover all configuration, usages, etc.
including javadocs and online docs
How much is 1000 hours anyways? I think this is like a years worth of
work or something. ;)
-bp
Jeromy Evans wrote:
It's been quiet lately so I thought I'd throw something out there.
If you could give 1000 hours to the Struts 2 project, what would you do?
I would like to it become the SOA framework of choice through :
- SEO-friendly URLs become the default and users never have to think
about it again;
- allow action methods to be bound to an http method and allow results
to be easily bound to the result code and requested content type (as
per REST plugin)
- support content in the request (eg text/xml or text/json
content-type), deserialize and set the model of the action (the
reverse of the REST plugin)
- allow actions to be pojos and delete ActionSupport (without losing
implicit i18n and validation functionality)
- allow hot deployment & run-time management of actions (OSGi??)
- refactor UIBean & XWork component so there's only one model and one
template per tag and they're easy to unit test (code-generate the
wrappers/template models/taglibs)
- action scope and component scope become first-class concepts
(integrate the plugins)
- add run-time developer tools; configuration browser becomes standard
in developer mode and add a resource bundle browser
- delete all ajax-like tags and funky tags; add standard interceptors
& models to ease integration with the client-side libraries, groovy,
grails, JSF, struts1 (and others?). tags move to plugin.
- I don't have an opinion about portal support but I'm sure it's
important
I think I ran out of hours already!
cheers,
Jeromy Evans
---------------------------------------------------------------------
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]