Thank you for your kind words of praise. My wife will also be happy to know that you like the index, since she did a lot of that work Would you be willing to post this comment as a review on Amazon.com or BarnesAndNoble.com? I know, I am such a glutton for reviews, but know that I genuinely want other people to benefit from the information I stuffed into this book as well...and they need to know it's going to be worth their while.
Putting aside that Spring WebFlow requires you to use a stateful pageflow, and comparing it with Seam on other bases, both solve the most fundamental problem in enterprise applications, management of the persistence context. The persistence context (e.g., the JPA EntityManager or Hibernate Session) is a stateful component. It was intended to remain open for the lifetime of the use case in which you are modifying the entities that it retrieves.
Case in point. You select a record for editing. You modify that record. Then you save it. The persistence context should remain open for that entire use case. Then, the ORM tool (e.g., JPA or Hibernate) can automatically detect changes and push them to the database. Better yet, it can detect when the database has been altered in the interim and prevent those changes from overwriting someone else's changes. There are a whole host of other features, such as persistence by reachability, that simply make the task of database saves and updates completely automated.
I am starting a new seam project that will release into production within 3 months. Can I safely start with Seam 2.1 with confidence that the beta cycle will be complete by year's end?
yes ;-) The Seam 2.1.0.GA release will be available in the next month or so. There will be follow on releases that focus on specific improvements 2.1.1 (increased performance) and 2.1.2 (SSO support). These should be drop in replacements for 2.1.0.