One Minute Bottom Line
|Portlets in Action is a good book for new and experienced Java portlet developers. The author does his best to not make the book specific to a portal vendor and uses Liferay, the best open source feature rich portal available at this time. It is important to note that this book is not a Liferay reference and covering all the features and functionalities of Liferay would be out of its scope.
Portal standard has been around since 2003. A lot of proprietary portal servers, portal developers, and architects have been around for a while. One thing lacking in this field is quality books that new developers can use to get onboard. Most developers who are used to a particular portal server are frequently surprised and left wondering how the feature would work in other portals. Yes, there is a standard but it is more like the interpretation of the Constitution when it comes to the real implementation of them. It is not easy to write a book that can serve as a reference to all open source portals. This book is definitely a great asset to the portal developers irrespective of the portal servers they work on.
The author covers the vast majority of the necessary topics, which range from the explanation of the portal framework to the various JEE frameworks that can be used to build portlets. He discusses the use of AJAX and various client side and server side libraries like DOJO, DWR etc. The choice of Liferay as the portal server seems to be a very good one as it is one of the most widely used open-source portals with an active community behind it. The book does a great job of explaining some of the topics that are supported in one portal and not the other. The author also gives details on Spring MVC, which can serve as a very good reference.
The author touches on the topic of portlet bridges and how an application can be migrated. This chapter is very encouraging but, as the warning goes, it is not easy to migrate all applications that are web applications to portlet applications. I could personally relate to this warning, having migrated Spring Web applications into portal a couple years ago.
This book is massive as seems to be the trend for "in Action" books. I have not run the samples for their correctness on various portal servers. In a few places the author uses iGoogle as an example. I do not think they fit in as standard examples of JSR-168 and JSR-286 portals. There is a benefit and disadvantage about describing every tool the author uses in the book. Some examples are explaining ANT, what the lines in build.xml do, facelets, and wicket. The benefit is that a new developer does not have to search the web for every new term he sees. The disadvantage is that it discourages experienced readers. An appendix could be good for describing some of the tools and technologies. The warnings should be read carefully as the author sometime uses quirks to get his sample application going.
To conclude, on a scale of 1 to 5, I would give this book a 4.