Product Description
This is the eBook version of the printed book. A new edition of this title is available, ISBN-10: 0137129394 ISBN-13: 9780137129393
Discover JBoss Seam: the Unified Framework for Simpler, More Powerful Web Development � JBoss Seam integrates EJB 3. 0 and JSF components under a unified framework that simplifies and accelerates Java EE web development. Now, JBoss Seam?s project leader and technology evangelist take you inside this powerful new technology, showing exactly how to put it to work. � � Michael Yuan and Thomas Heute show how JBoss Seam enables you to create web applications that would have been difficult or impossible with previous Java frameworks. Through hands-on examples and a complete case study application, you?ll learn how to leverage JBoss Seam?s breakthrough state management capabilities; integrate business processes and rules; use AJAX with Seam; and deploy your application into production, one step at a . . . More >>
Yuan and Heute offer the Java programmer a very tempting route away from using the standard Java Enterprise Edition. As they point out, EE version 5 is an uncomfortable mixture of EJBs and JSF. The EJBs exist on the server side and encapsulate business logic. While the JSF is used, also on the server side, as a model-view-controller framework for Web work. In general, separating the MVC from the business logic is correct. But if you have to code EJBs and JSF together, then things get awkward. Code gets verbose and hard to structure.
The book’s alternative is Seam, which is meant to be a filler between EJBs and JSF. One nice aspect is that Seam is inherently stateful. For a Web user session, this is vital, and it’s nice from the text to see state built into Seam, without you having to shoehorn it in.
Perhaps the most persuasive parts of the book are the code examples. Granted, the authors wrote these to be as concise and elegant as possible. But if you accept that most authors of computer books do this, then you can quickly appreciate the contrast between the code here and comparable code in texts on EJBs and JSF. The latter code examples are much longer and more intricate. The brevity of code writing that Seam affords you can greatly help in two ways. Quicker to write. And quicker to debug.
Having said this, I am undecided about one aspect of the text. Involving what is called “dependency bijection”. It is meant as a lightweight way for POJOs to interact with each other. As opposed to using framework interfaces or abstract classes. But the extensive use of interfaces (and abstract classes) has led to the successful development of extensible packages like Eclipse. (And I’m sure readers can cite other examples. ) Is it the case that interface implementations do have limitations, perhaps in the context of Web servers and business logic?
Rating: 5 / 5
I needed to develop a project and fast. I purchased this book because I needed to get Seam up and running quickly. I found it very clearly written: with helpful examples and source code. It also provides a introduction to AJAX and has a few chapter on how to integrate AJAX with JSF and Seam. Very interesting! I recommend this book 100 percent!
Rating: 5 / 5
Its a great book. . It difficult to learn Seam without this book.
It may be slightly dated, with Seam 2. 0 coming out recently.
But per the author, there are not significant changes in the code
ie mainly config changes.
(eg they recommend JPA with tomcat instead of embedded server option
with tomcat)
Seam(and specifically seam-gen) still has some significant bugs/issues
to iron out(but workaround exists).
Rating: 5 / 5
This is a very good book for learning about SEAM, a web framework that I would consider one of the best for its simplicity and power. However, what this book is best at is teaching you the basics of SEAM (though is some areas, such as stateful navigation rules, it doesn’t go deep enough).
Where this book lacks most is as a reference book. The reason for this is that many concepts are introduced well before the chapters that talk about them. When looking back at these concepts, I find myself having to find the first place the concept is introduced because the chapter about that assumes that you have read the earlier introduction.
Overall this is a good book for learning the basics of SEAM. However, it is not a good in-depth reference. Nevertheless, SEAM is an excellent technology and there are not yet many good books on it. This book will bring you up to speed on SEAM pretty quickly so I still recommend it.
Rating: 3 / 5
Very good book. It gives good knowledge about how to write
applications in this framework. Many working examples are also
appreciated.
In the beginning authors explain what is Seam, and it is understood,
as Seam is much different than any other framework with similar
functionality. Seam is not meant for using it as “white box”. It is
rather “black box”, designed for just using it, without knowing inside
details. Because of this debugging Seam code is tedious task, and in
fact unnecessary. There is chapter in the book explaining how to use
debugging mechanism built in Seam, so called “debug pages”. One can
check session state, stacktrace or JSF components tree. Very helpful
for anyone writing web applications in this framework.
There is also chapter about business processes and business rules.
Yes, this is also built in Seam. As an example in the book is ticket
system. User logs in, lists tasks and assigns them to herself.
Developer does not need to care about storing users tasks in database,
it is enough to set component scope to BUSINESS_PROCESS. This is very
interesting functionality, and although it is explained quite well in
the book, I would like it to be explained even better.
There is good testing support in Seam and this is also well described
in the book. Seam provides tools to do in tests what is normally done
by container, like dependency injection, database and transactions
mocking etc.
Another chapter is about running Seam applications on non-ejb3
containers (like Tomcat).
The book covers many topics, not only about Seam itself, but also
about how to use Seam, test, how to deploy applications on non-seam
container, how to connect to another than default database etc. The
book is targeted for real users, for people working with the
framework.
What I miss is more insight into how Seam internally works. Such
knowledge is not necessary to write working apps, but I just like to
know such things.
Some knowledge about JSF and EJB3 is also very useful when reading
this book. I would like some of this stuff explained, but on the other
hand it is book about Seam not about EJB3/JSF.
I think reading this book is very good for someone who wants to write
applications in Seam, even advanced ones. Seam is interesting
technology, much different than pure JSF+EJB3, and it’s worth
learning, even for someone not using it at work, just to see new
possibilities.
Rating: 4 / 5