I'm being granted one of those once-in-a-lifetime opportunities to completely re-architect an enterprise app from the ground up! I'm talking about an application with a huge set of features--and as you would expect, it just has to be done faster than is reasonable. This means my time for proper full experimentation is short (isn't it always?) and I could really use some input!
What I've found so far is that the best options seem to be Tapestry, Wicket, Stripes, and Struts 2. I've worked with a number of MVC frameworks and I spent a great many years on Struts 1.x, so all the discussions/comparisons with that have not been lost on me in the course of my research.
What I need is some input from someone who has used these frameworks to pitch in with some commentary on how easy/hard it is to implement a few major features:
Dynamic (data-driven) folder tree -- like Windows Explorer. Note that this absolutely CANNOT be hard coded or fixed in JS or component code.
(Modal) Dialogs -- fill the whole browser window with OK/Cancel buttons
Data grids that may have sources other than a standard DB query but can be paged, sorted, exported etc. (inspected, injected, rejected and neglected . Apologies to Arlo Guthrie.) Also where each item can have actions performed upon them, i.e. right click->action list. Usability of AJAX is obviously a plus!
Content transfer, both up/down: Invoke editor on a client machine?
That first item--the folder tree--I expect to be the hardest to achieve. I found the Dojo toolkit which seems promising, but am skeptical on integration points.
Any comments on what is hard/easy in these regards for a particular framework -- not necessarily compared to any other framework -- is appreciated! [ April 02, 2008: Message edited by: David Hibbs ]
"Write beautiful code; then profile that beautiful code and make little bits of it uglier but faster." --The JavaPerformanceTuning.com team, Newsletter 039.