GlassFish Book Review
By paulsen on Feb 20, 2008
A couple months ago I found a book called Java EE Development using GlassFish Application Server. As a GlassFish developer, I was immediately curious as I hadn't heard anything about this book until it was already published. Perhaps this is a sign of how popular GlassFish has become.
When I first opened the book and thumbed through it, I was impressed (flattered?) by the number of screen shots of the GlassFish Admin Console -- which for those who don't know is the part of GlassFish I help develop. The book's chapters are well organized and topics are very easy to find. The book reads like a well-written tutorial that easily takes someone completely new to GlassFish (or even Java EE) and walks them step-by-step through building applications and learning each major component. I was impressed. To give you an idea of the topics covered, here are the chapter titles:
- Getting Started with GlassFish
- Servlet Development and Deployment
- JavaServer Pages
- Database Connectivity
- JSP Standard Tag Library
- JavaServer Faces
- Java Messaging Service
- Enterprise Java Beans
- Web Services
- Beyond Java EE
So as you can see from the chapter titles, the book covers it all. However, it's only about 400 pages, so as you can imagine the depth of coverage for any one of these technologies is minimal. However, this is perfect for an introduction to each of these technologies so that you know what the each one is good for and how to get started with them. It certainly beats buying and wading through half a dozen different books to come up to speed on all of these technologies!
However, there are a few things in the book that I would have liked to see different. First, JSP is introduced early and doesn't mention JSF for a few more chapters. Since this book is aimed at an introductory level, I would have expected the text to at least suggest using JSF instead of JSP before it discussed JSP in detail -- new users should start on JSF instead of JSP, or at least be given the option. Why learn bad habits from JSP? In fact, I think the book should have done its readers a favor and deemphasized JSP a lot more in general. The 2 chapters dedicated to JSP (JSP & later JSTL) should have been combined.
As for the JSF chapter, again it used JSP. However, in this case, I can see the authors dilemma. JSP is the only view technology that is immediately available out-of-the-box when GlassFish is installed, but JSP isn't the way anyone should write JSF applications. In my opinion, the author should have mentioned JSP, maybe showed one quick example... then merged the Facelets section at the back of the book (in the Beyond Java EE chapter) into the JSF chapter. The majority of the examples should have been using Facelets -- or better yet JSFTemplating (ok I'm biased and I admit it! BTW, did you know JSFTemplating supports the Facelets syntax and is a GlassFish project?). While we're at it, throw in Ajax4JSF which would otherwise be left lonely at the back of the book.
Another thing I would have liked to have seen is a chapter, or maybe an appendix, on GlassFish sub-projects explaining what they are (JSFTemplating, Metro, jMaki, Phobos, Grizzly, Sailfin, Shoal, Woodstock, HK2, etc. -- there's a list on the bottom of the GlassFish homepage). I would have also liked to see a couple paragraphs at the beginning of the book when introducing GlassFish about the GlassFish community. It could have point users to The Aquarium blog, GlassFish Forums, the GlassFish Wiki, GlassFish IRC Channels, and of course give some information on how to participate in the community.
So, would I recommend this book? I would absolutely recommend it, to anyone just learning Java EE or anyone that would like a quick overview of everything Java EE offers. It's also a great book for more experienced developers that may not be familiar with all parts of Java EE. However, if you're looking for an in-depth book on any one of the topics covered in this book... do the math, the book is 400 pages and covers ALL of Java EE (with lots of screen shots!).
If you're ready to buy the book, here's a link to it on Amazon (I don't get paid if you click on this link... unless someone can tell me how! ).