struts-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Phil Zoio <>
Subject announcing Java 5 Struts extension framework + name? + request for help
Date Fri, 10 Mar 2006 11:07:04 GMT

I have been working on some extensions to Struts for Java 5 which I 
would like to make publically available shortly under an Apache open 
source licence. I think the extension offers to greatly enhance existing 
Struts-based development for Java 5 users.

The key design goals of the framework extensions are:
- introduce no compatibility issues apart from Java 5
- simplify the action/form programming model
- offer or even improve on features offered by competitive frameworks 
(declarative validation, data binding, dependency injection, 
interceptors, etc)
- keep easy to learn for existing Struts users

The scope of the extension is indicated by the Key Features section 
below. I plan to set up the source control environment (probably 
SourceForge or and home page next week. Before doing so, I 

I'm currently working on three names:
- StrutsPlus (one word): please let me know if you have a problem with 
this particular choice
- Strexx (stands for Struts Extensions, of course. Not using "Strex" 
because is not available)
- Strecks (a variation on Strexx)

I'll make additional posts next week when I have an environment, and 
some docs and samples available. Also, I'd really appreciate any support 
anyone is prepared to offer, in terms of advice, suggestions, comments 
and particularly help!


Phil Zoio
Realsolve Solutions Ltd.


Key Features

- pure POJO action beans with zero framework dependencies
- action vs controller separation. Request processing logic is 
encapsulated into Action controllers, simplifying action implementations
- annotation-based dependency injection (typed request parameters, 
session attributes, Spring beans, and many others)
- various out of the box controller implementations
- control over action instatiation. e.g. make action bean 
"spring-managed" by adding a single annotation!

- annotation-based form validators (XML and code-free)
- annotation-based data binding from form properties to domain model
- annotations for additional per-field control over type conversion
- converters and validators type-parameterized using Java 5 generics

- mechanisms for facilitating redirect after post
- out the box support for various mechanisms to Navigate to action forward
- additional navigation mechanisms pluggable using annotations

- pre and post action interceptors, with access to dependency resolved 
action beans as well as full runtime context

- 100% extensibility in the sense that new validators, converters, data 
binding mechanism, dependency injection mechanisms, etc. can be added 
without changing any existing code or config!
- supports custom action annotations with no code or config file change

- Actions, form validation and data conversion easily testable with 
plain unit tests - no test libraries required

- works on the unchanged Struts 1.2.x code base. 100% backward 
compatibility, no migration issues
- Works with unchanged Struts tag libraries and configuration files
- works with StrutsTestCase
- no extra XML required
- requires Java 5

To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message