aspose file tools*
The moose likes EJB and other Java EE Technologies and the fly likes is Seam just another framework? Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login
JavaRanch » Java Forums » Java » EJB and other Java EE Technologies
Bookmark "is Seam just another framework?" Watch "is Seam just another framework?" New topic
Author

is Seam just another framework?

Anthony Karta
Ranch Hand

Joined: Aug 09, 2004
Posts: 342
Hi authors,

Where does Seam fit in JEE 5 architecture? is it like Struts minus JSF?

TIA
anthony


SCJP 5
Michael Yuan
author
Ranch Hand

Joined: Mar 07, 2002
Posts: 1427
Seam ties together various components in Java EE 5. For instance,

* It allows you to use EJB3 session beans and even JPA entity beans directly as JSF backing beans -- hence eliminating all those XML in faces-config.

* It integrates jBPM in JSF to allow much better page flow (no returning arbitary string from JSF beans).

* It vastly improves the EE security model and integrates Drools to support rule-based per-instance security.

* It integrate Hibernate in a stateful manner to eliminate the common lazy loading errors. (Seam and Hibernate are both invented by Gavin King).

* It allows JavaScript on the client side to access server components directly -- much like DWR -- for Ajax.

* It integrates iText for generating PDF directly from JSF pages, Quartz for asynchronous and cron tasks etc.

Of course, there are much more than what I listed here. Go find out in the book. Everything in Seam is driven by annotations -- very few XML is needed.


Seam Framework: http://www.amazon.com/exec/obidos/ASIN/0137129394/mobileenterpr-20/
Ringful: http://www.ringful.com/
Anthony Karta
Ranch Hand

Joined: Aug 09, 2004
Posts: 342
Originally posted by Michael Yuan:
Seam ties together various components in Java EE 5. For instance,

* It allows you to use EJB3 session beans and even JPA entity beans directly as JSF backing beans -- hence eliminating all those XML in faces-config.

* It vastly improves the EE security model and integrates Drools to support rule-based per-instance security.

* It integrate Hibernate in a stateful manner to eliminate the common lazy loading errors. (Seam and Hibernate are both invented by Gavin King).


Thanks for your reply Michael.

Does Seam integrate spring and hibernate seamlessly? little xml wiring needed? is it easy to integrate other ORM api such as JPA?

thanks again
anthony
Michael Yuan
author
Ranch Hand

Joined: Mar 07, 2002
Posts: 1427
Yes, Seam integrates both Spring and Hibernate. You can inject Spring beans into Seam via the standard @In annotation -- no XML needed.

Seam is *designed for* Hibernate. Gavin King is the founder of both Hibernate and Seam.

You can use Seam to drive openJPA and toplink -- but you lose some functionalities such as integration with Hibernate Validator Annotations etc.
Anthony Karta
Ranch Hand

Joined: Aug 09, 2004
Posts: 342
Originally posted by Michael Yuan:
Yes, Seam integrates both Spring and Hibernate. You can inject Spring beans into Seam via the standard @In annotation -- no XML needed.

Seam is *designed for* Hibernate. Gavin King is the founder of both Hibernate and Seam.

You can use Seam to drive openJPA and toplink -- but you lose some functionalities such as integration with Hibernate Validator Annotations etc.


What happen when there is new release of spring or hibernate, can we incorporate them ourselves or we depend on Seam release?

does Seam run better on JBoss compare to other app server?

TIA
Michael Yuan
author
Ranch Hand

Joined: Mar 07, 2002
Posts: 1427
Cannot say for Spring. But every Hibernate release will be tested extensively against Seam -- as I said, Hibernate and Seam are developed by the same people.

Seam runs better on JBoss only in the sense that most Seam developers choose JBoss as their app server. Hence it is tested much more extensively on JBoss than other app servers.
Anthony Karta
Ranch Hand

Joined: Aug 09, 2004
Posts: 342
Originally posted by Michael Yuan:
Cannot say for Spring. But every Hibernate release will be tested extensively against Seam -- as I said, Hibernate and Seam are developed by the same people.

Seam runs better on JBoss only in the sense that most Seam developers choose JBoss as their app server. Hence it is tested much more extensively on JBoss than other app servers.


Thanks again Michael.

My last question, Does JBoss Seam wrap spring, hibernate, JSF etc behind its API? will be another learning curve to understand how Seam works then?

TIA
anthony
Michael Yuan
author
Ranch Hand

Joined: Mar 07, 2002
Posts: 1427
Well, Seam has its own programming model. So, yes, there is a learning curve.

But the benefit is that you will be able to write your applications in a much more consistent manner than before -- not some Java code here, some XML there as it is today.
Krishna Srinivasan
Ranch Hand

Joined: Jul 28, 2003
Posts: 1844

Good Introduction article on JBoss Seam
http://www.javabeat.net/jboss-seam/2007/06/jboss-seam-introduction/


Krishna Srinivasan
Spring Tutorials, OCAJP Mock Questions, 400+ OCPJP Mock Questions
 
I agree. Here's the link: http://aspose.com/file-tools
 
subject: is Seam just another framework?