What's new in Seam 2

Posted by    |       Seam

We've released Seam 2.0.0 GA to the world. (downloads and docs for the impatient) Seam 2 is a big release. We'll be talking a lot about the new features over the coming days and weeks. To get you started, I wrote up my list of the top 10 things you should know about Seam 2.

Web Services

POJOs - check. Session beans - check. Entity beans - check. Message-driven beans - check. Web Services? Now we've got it all. Web services endpoints can now be Seam-aware. Web services can be conversational and can make use of Seam components and services.


Tired of using Java? Do you dream of builders and closures? In Seam 2.0, Seam components can be written in Groovy.

Hot deploy

In development mode, Seam can hot-deploy component definitions without needing to redeploy your entire WAR or EAR. We'll also automatically redeploy configuration files and view pages, giving a super-quick dev cycle. Our new eclipse integration will copy hot-deploy incremental changes straight to the server whenever you make a change to your source.

Eclipse support

Did we just mention IDE support? JBossTools and Red Hat Developer Studio both offer killer IDE support for Seam 1.2. We're just wrapping up Seam 2 support in JBossTools. You'll get complete project wizards, integrated tested, autocomplete on EL, visual editing of view pages, and more. Keep your eyes out for the official release.

Removing the JSF dependency

The Seam core has been completely overhauled. In addition to extensive packaging changes, Seam has now been de-coupled from JSF so that it can be more easily used with other web frameworks. We've included some experimental GWT integration that shows how this might work. Want Seam with your favorite web framework? We've opened the doors for the ambitious.

JSF 1.2

If you are happy with JSF, we're now using JSF 1.2. Seam 1 users should note that with switched from myfaces to the JSF RI as our default JSF implementation.

JBoss EL

If plain-vanilla EL us a little too bland, we now offer JBoss EL. JBoss EL supports parameterized bindings, support for non-JavaBean properties and projection


Ok, ok - we get the message. You guys want Maven support. Well, now you have it Not only are we managing our own Seam dependencies in Maven, we've got our own fancy Maven repository for you to pull Seam from. Stop sending the letters, ok?

More integration

Seam is all about integration. Our asynchronous invocation support now can use Quartz as an alternative to the EJB3 timer service. We've made it easier to use Hibernate Search in your applications. And, we've added JFreeChart support both for web images and embedded in PDFs created with Seam's iText support.

Better support for non-EE environements

We've moved from Embedded EJB3 to JBoss Embedded for unit testing and for full EJB3 support in the web container. If you are a Seam+Tomcat user, you'll want to read up on the changes If you want nothing to do with that EE stuff, you can of course run in a completely non-EE environment. We've improved our support for this, especially when it comes to working without JTA support.

Of course, there's a lot more new in Seam. In fact, I took the time to count out 301 new features in Seam 2. (Really - take that Steve Jobs and your puny 300 new features in Leopard) If you run into any issues, make sure to visit us on the Seam forums. We've got a huge, but still growing, community ready to help you get started.

Back to top