> 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]

Reply via email to