> Well here's our story, if it helps you. Here's ours as well:
Wicket (+some Echo2) + "exposed POJO model" managed by Javelin + JPOX for the ORM. Having come from a JSP/Struts + home grown ORMish kind of framework using proxy/reflection implementation (yuck) this new set of tools is ***ken awesome and orders of magnitude more productive. Wicket ------ We sit our wicket pages/forms straight on top of our domain model objects (exposed POJO model pattern) and yes, all the DTO lovers out there will cry "heretic" and they are most welcome to continue the 'self flagellation' that becomes of the extra DTO layer if they want. But for our scenario: we've never had to make a change to a model object that we haven't had to reflect in the user interface anyway so the argument that "the DTO layer shields the user interface from model changes" is 99.9% of the time completely bogus. I'm also assuming no one is still using DAOs either - they're completely redundant in a 'transparent persistence' world. We looked around at most of the Java UI frameworks (and you probably know that there's a lot of them). The two best that we liked that suited our needs were Wicket and Tapestry as they both had similar goals but Wicket won hands done on its approach and the quality of its implementation. Most of our pages need to be bookmarkable so that cut out frameworks like Echo2 for those pages but for some of the pages that don't need to be bookmarkable or indexed by search engines we use Echo2 for its pure Java approach to Ajax. Persistence ----------- The new 'ASM' byte code enhancer plus new 'enhance on the demand' feature of JPOX 1.2 (http://www.jpox.org) makes the transparent persistence of our POJO model a nirvana that has to be seen to be believed. Javelin (http://stepaheadsoftware.com/products/javelin/javelin.htm) automatically creates and updates all ORM metadata for us as we add to and change the domain model. Exposed POJO Pattern/Dependency Injection Framework --------------------------------------------------- We use lightweight exPOJO (http://expojo.com) for dependency injection and a really easy to learn implementation of the "exposed POJO model' pattern. It also provides an abstraction layer for transparent persistence engines so we can perform performance analysis of our app under JDO (JPOX) or Hibernate (it's easy to implement plug-ins for others). --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
