A response better-late-than-never
I learned Struts back in 2006 after borrowing a Struts book. I remember trying for 2 days to get a simple example to work, only to find it was something very simple in the struts XML file I miss-typed. Once I got up to speed, I then developed an application which used a lot of Integer inputs and the validation/repopulation with '0' in the empty field values really bugged me. Lot's of other things (including tiles) also made me think, "there has to be an easier way to do this?".
Long story short, after looking at loads of introductory code examples, the Stripes framework's Quick Start Guide
made me go, "No way! It can't be that simple". I downloaded it, copy-pasted the code and it worked. Changed a few things, added a few things, looked through the references on the website and thought, "blimey this is really easy!". In short, with Generified Advanced Indexed Properties
, Stripes Layout Tags
and being able to Unit Test ActionBeans
(among lots of other things), I couldn't go back to Struts.
Unfortunately, I still had to work on projects with struts and help the junior programmers to use struts. They always struggle. But since I'm a senior développeur, I always leave the presentation layer to them while I develop the service layer and the JPA/DAO layer. ;o)
All that's left is to convince the companies that hire us to use Stripes. If they hear struts, spring, jpa, hibernate, the like it. But they don't know Stripes so they think their internal staff wouldn't be able to take over once we're gone. The thing is, is that if you know struts, you practically already know Stripes and you'll be way more productive.
BTW, I put together two best practices we use on all of our projects to keep things strictly seperated and organised. This helps when many developers are working together on large projects (as well as unit testing) :
Stripes Spring JPA
Multiple Resource Bundles