Seam Framework: Experience the Evolution of Java EE
June 6, 2008
After a highly anticipated wait, Michael and I are pleased to announce that the Rough Cut of JBoss Seam 2E is available with a new title: Seam Framework: Experience the Evolution of Java EE. The new edition is a major update to the original including:
- New chapters on Groovy, JBoss Rules (Drools), Events, Quartz, Multi-layer Caching, Maven, and Seam 2.1 Security
- Introduction to Web Beans (JSR-299)
- Major updates to Seam conversation model, transaction management, and many other features
- Updates to all examples and the overall structure of the book
The new title boasts the power of Seam and the impact it has had on the Java EE environment with the upcoming Web Beans JSR. Whether you are a developer in the heat of a baptism by fire Seam project, a seasoned Seam developer looking to deepen your understanding of the framework, or a developer interested in learning this exciting new technology; this is the book for you.
The book takes a pragmatic approach by walking you through detailed examples illustrating how to use the features of Seam and providing the particulars necessary to get up-and-running quickly. In addition, the book provides in-depth discussions of these features ensuring your understanding of the powerful new concepts Seam has introduced to the Java EE environment.
Be aware that the Rough Cut has not been through the rigorous editing process the final version of the book will receive. Your comments and feedback are welcome and encouraged. If you want to reserve your copy of the final print version today, you can pre-order now at Amazon!
The examples covered throughout the book can be downloaded here. You can deploy the examples by first editing the included build.properties file to include the following settings:
- jboss.home – the location of your local JBoss instance (the examples have been tested against JBoss AS 4.2.3.GA)
- seam.home – the location of the latest Seam distribution (the examples have been tested against JBoss Seam 2.1.0.SP1)
Once you have made these changes simply execute ant main deploy. This will build the example and deploy it to the configured JBoss instance. If you have any questions or run into any difficulties, please let us know!
Posted in 


content rss
June 10th, 2008 at 8:33 pm
Wow…I’m still the first to comment?!
Congrats on the release of the book you two!
June 10th, 2008 at 8:52 pm
Thanks Chris!
June 22nd, 2008 at 6:34 pm
I just purchased the book. After all the the very helpful posts you have made I know the book will be extremely helpful. I am excited to get started reading it and will start as soon as I press the submit button.
July 11th, 2008 at 9:19 am
I have the 1st ed. It was a very helpful learning guide (in addition to the forum and Seam ref docs) around a year ago when I first started Seam dev.
I hope you guys improve the index, it was bad/insufficient in the 1st ed. and makes it difficult to use as a reference (e.g. no SMPC in the index even though it’s covered quickly in section 9.3.1 and no SeamPhaseListener). Farley’s book did some decent coverage on SeamPhaseListener and the JSF lifecycle.
I also hope you guys spend more time covering SMPC and LazyInitializationException as well as Seam best practices (e.g. using Richfaces, using @Factory and @DataModel design patterns, conversation mgmt strategies – nested, join, begin). I’m not sure that was covered in the 1st ed.
Seam in Action looks promising, I have the MEAP.
July 11th, 2008 at 11:35 am
Thanks for the feedback. We will certainly work to improve the index. We are still finishing up some of the chapters (which you will have access to shortly on Rough Cuts), then we will really tackle these details.
Absolutely! There are many, many improvements in these areas. SMPC and LIEs are covered *in-depth* in Chapter 10. Check it out, already available on Safari Rough Cut.
3 complete chapters are devoted to conversation management (chapters 7, 8, and 9) again available now. Very in-depth discussion of the details of the conversation model, the conversation lifecycle, and best practices.
Design patterns are being covered throughout the book and there is even a chapter devoted to explaining Seam Events (the Seam implementation of the Observer pattern). This chapter will be released soon. In addition, Richfaces will be covered in the examples as well as Icefaces providing the freedom of choice
July 18th, 2008 at 9:13 am
I like the book but the source code website is currently unavailable. I hope you get that up soon as it’s quite difficult to work through without access to the source code examples.
Thanks!
July 18th, 2008 at 9:42 am
Thanks for the comment, I hadn’t seen the issue! I will contact the publisher right away to get the issue resolved. In the worst case, I will zip up the examples and make them available here over the weekend. Glad you are enjoying the book!
July 21st, 2008 at 8:11 pm
A link to the examples has now been provided in the original posting. Please let us know if you run into any issues with the examples.
September 28th, 2008 at 4:34 am
bought your book on safari online. its great. i was completely new to seam and now my first seam based page is in the final stage of testing before release. your book literally walked me through all the difficult stuff ^^
the only thing i actually missed while reading it was hyperlinks to the example downloads. for example it sais “treecache.xml” is found in “booking example”. please make the “booking example” clickable in the pdf so that it takes me to the download.
January 8th, 2009 at 10:38 am
Just bought this. I have used Seam for 2+ years (since he was but a young lad). I’ve bought every book written by Seam developers (as soon as they became available) and will continue. $60 Rough Cut pdf and print book? Ha, I happily pay it!
January 27th, 2009 at 6:52 pm
I have been waiting for this book for several months, based on the above statement from Burke I went to the safari site and found the following:
Online, PDF and Print Book Bundle USD $60.73
The thing is I like the idea of buying the PDF when I buy the book, I have been doing
this at Manning now for about a year. My issue is I don’t want the “online” option. I did this last year $20+/month, I never used it.
Can someone tell me if there is a PDF/Book option where I have the PDF of the
entire book on my local PC for an unlimited time without any monthly fee?
I looked at the help:
Rough Cuts Access
Access Rough Cuts now by selecting one of the available purchase options. You can purchase digital access of each revision, pre-order the print book at a significant discount, or get the best of both worlds – digital access now and the discounted print book later. For more information, visit our online support center.
The key word here is “digital access” does this mean I get a PDF or is this the
online option?
February 5th, 2009 at 2:44 pm
Hi Tim,
I will send your request over to Prentice and find out if there is an option for this. I can only see the online option you mentioned which provides access through Safari.
March 22nd, 2009 at 8:30 pm
[...] [...]
June 30th, 2009 at 9:43 am
Nice book.
However, the authors have something against Spring.
Dear authors, you should not agressively critisize other framework.
1- You tried to tell us that Spring is a “Hell” because of use of XML => What about seam ? Spring doesn’t encourage the developers to put everything in XML files. So it’s of the responsability of the developer to choose what to put in.
2- Lazy initialization Problem => this is not a Spring problem at all => It’s the developer who should ensure what and when to load data from db => loo, at harnessing hibernate book.
3- Conversation (and other new scopes) => in the Spring webflow there already are something like these.
I think you should have concentrate on seam features instead of barking at Spring.
Look, the spring developers never told that it’s the ‘best’ or whatever. They just created something that they think useful. Even Gavin King worked with this framework. Actually, he firstly created seam to manage workspaces in a JSF/Spring application.
July 2nd, 2009 at 4:20 am
why did you delete my previous post about your critics of spring ???
shame..
July 2nd, 2009 at 7:31 am
I did not delete your posting, please be patient
All posted comments are submitted for moderation and must be approved which helps avoid spam. This may delay comments a day or two depending on my schedule.
July 2nd, 2009 at 8:01 am
Regarding your comment on “critics of Spring,” I will start by saying that I am a Spring user as well as a Seam user. I have used Spring in a number of enterprise applications and will continue to use Spring on contracts in the future depending on the specifics of the problem and the needs of the enterprise.
With that said, let me respond to your comments:
1) We are not saying the Spring is hell. XML hell is a commonly used phrase that describes the issues with extensive XML configuration. Spring 2.X has improved greatly in this respect, but Seam has used convention over configuration and annotations from the beginning which greatly reduces the amount of XML required.
2) Sure, the responsibility can lie on the developer, but why not make life easy? With an SMPC lazy initialization works like it should, we can edit managed entities throughout the web transaction, and simply flush the results when the web transaction successfully completes.
3) Okay, so we shouldn’t discuss conversations then? Conversations are core to Seam and must be understood to understand how Seam works. Yes, SWF has similar concepts, but that doesn’t mean we should leave these concepts out of the book
We only mention Spring twice in the book to demonstrate an issue that Seam solves through a well-known example. We also do this with other frameworks as well, including EJB and JSF which Seam was originally built to integrate!
July 16th, 2009 at 3:12 am
In betterjsf, you forgot the namespaces etc in the persistence.xml.
Update it to
[...]
to get it working with JBoss 5.
July 16th, 2009 at 3:14 am
OK, obviously the xml got removed from my post. Basically use the same persistence.xml as in the helloworld project.
July 17th, 2009 at 6:38 am
Thanks for the heads up to other readers!
July 22nd, 2009 at 8:56 pm
Hi all, I just got this book but when I ran the helloworld that I’m following from the book, I’m getting this error:
org.apache.jasper.el.JspPropertyNotFoundException: /hello.jsp(19,0) ‘#{person.name}’ Target Unreachable, identifier ‘person’ resolved to null
But when I ran the helloworld which I downloaded, it ran perfectly. This is driving me nuts and I even compare the ear file from the downloaded example and my generated ear file and I can’t seem to find a difference. Please help me. Hopefully, I could email the ear file that I am generating as well as the ear file from the downloaded example helloworld.
July 27th, 2009 at 10:16 am
Ronald,
Did you add the name annotation to your person class ?
@Name(“person”)
class Person implements Serializable{
…
}