I use and recommend Seam. In doing so I also recommend using EJB3.0
with Hibernate as the underlying implementation. The support for EJB
over plain hibernate is better from the Seam team.

As for other libraries, it is a personnal choice (no one ever said
that the open source community doesn't present different options).
With using Seam & Facelets I have seen no need for Shale or Spring.
Seam & Facelets combined have similar functionality to Spring and
Shale.

When I looked at Spring, I decided that it added way too much
complexity for very little feature set, but that is my opinion. I'm
sure others would swear by it.

I would read each of the web pages with the associated documentation
for each technology, read their archives and see for yourself what
sounds good. For JBoss, I recommend reading their manual and looking
at their examples (all of which are using Facelets BTW).

The reason I chose Seam is that it handles the ORM situation very
well, especially with lazy loading of collections. As for EJB versus
just Hibernate by itself, realize that EJB3.0 is much different and
better than previous specifications. Entity beans in EJB3 are simply
Hibernate objects now.

On 10/29/06, Nicklas Karlsson <[EMAIL PROTECTED]> wrote:

> * use hibernate for ORM (instead of the whole EJB stuff)


You could also consider JPA over Hibernate, they add another abstraction
layer to the persistence. Of course, if you don't need it theres no point in
adding it

> What are other common/recommend practice?
> * Do I need Spring?
> * Do I need Shale?
> * Do I need Seam?


You don't "need" any of them but I have noticed that Spring does a nice job
in handling "plumbing code" and simplifes changes that you might want to add
later that influences the whole application.

You might want to take a look at

http://www.javaworld.com/javaworld/jw-07-2004/jw-0719-jsf.html

for hints on application architechture, package structures etc.


Reply via email to