It’s Friday and I’m traveling by train from Switzerland back to Germany to meet the family after a week full of work
. I’ve to spend five and a half hour for the travel. So, I have enough time to continue the review of the book.
Indeed I was not able to start the first chapter this week. So, I only had a short look at the introduction that was in parts similar to my book. Ian is a lucky guy. He got an extra foreword by Ed Burns, the spec lead for JSF. The list of reviewers is the who-is-who of the Faces of JSF. Well, done Packt!
Ed mentions Ian’s JSFToolbox. That’s the project I got into contact with Ian’s work the first time, too. He offers pretty, but a little out-of-date, references for the ICEfaces tags and also for other frameworks. I’ve to admit that I still prever Ian’s presentation of the ICEfaces tags over the JavaDoc style that ICEsoft offers
.
Standard JSF Components
So, let’s start with the first chapter. First of all, I like his style of writing. Clear, understandable and what you expect and know from a real pro.
The chapter tries to give an introduction to the JSF basics. It shall prepare the other chapters that show more complex and feature-rich implementations of the standard JSF components. Nice idea to start with the basics. But, the chapter has only 43 pages. Not much space to describe what others describe in more than 400 pages. So, I miss a lot of details that would be important for a person who has a first look at JSF. The backing beans concept and the description of the JSF Expression Language, for example, needs less than one page of text. That’s pretty short.
On the other hand I read about basic concepts of HTML to introduce JSF components that offer almost the same features as their HTML pendants. I had a second look at the “Who this book is written for” wondering what’s going on here. Two statements are important:
- professional web application developer interested in learning JavaServer Faces
- Java programming experiences plus a good understanding of HTML
Hmm. So, my feeling is correct. HTML descriptions are not necessary.
I already mentioned the number of pages for the chapter: 43. Well, it is much too short to describe all the JSF basics so that a JSF beginner can understand the JSF ideas. But, it is also much too long to read. I think it was around page 30 I started to have a look forward to search for the end of the chapter. I became bored to have to read all those missing pages to get a useful cut in content.
The first chapter should get a split into a chapter with simple components and another one with advanced JSF components. This would allow to get into more detail in using those components. For the most components I miss the details about the backing beans that are used in the Expression Language of the code samples.
I myself know what the text is talking about. But for a beginner this is too short. I understand that it was not possible to print all the source code, I had the same problem with my book, but a little bit more would help to understand the concepts. When you have no access to the source code to study the details the text is less useful (I’m currently traveling reading the book only).
If you have some experiences with the JSF programming chapter one is pretty good in giving you an overview. It’s a little bit longer than a magazine article or a detailed blog posting, but for an overview its quite good.
My suggestion to all the JSF beginners buying this book: also take Ed Burn’s book or one of the other books that have a pure JSF 2.0 standard components introduction. You may also have a look at my How to Start the JSF Dance.
Some details in the chapter that got my special attention:
Page 18, “Registering a message bundle (JSF 1.2)” I never tested this, but the sample code is the same for the “messages” bundle. It seems to me that the “#{view.locale.displayName}” shall show this new feature. But, I would expect the previous example without using the “f:loadBundle”. It is not clear what the “view” context really is.
Page 28 Indeed a spelling error for “SelectManyCheckbox”.
Page 28, “Selecting one or selecting many values” A switch of the “conclusion” and the “introdution by example”. Start with the “Rendering a list of countries”, page 33 ff. Else you don’t understand what Ian is talking about. However, I don’t understand why we have the UML diagram without the necessary code here. A bit too complicate to me to describe those JSF components. I would skip the converter part here.
Page 41, “Rendering an HTML table” If the “dataTable” is one of the most important components it should get some more pages of description. This is similar to the “backing beans” and the “Expression Language concept” mentioned above.
The next chapter is about Facelets. Facelets is what makes JSF really usable. I’m looking forward to it
.
![]() |
![]() |
![]() |
![]() |





Pingback: Review of Chapter 2 of “JSF 1.2 Components by Ian Hlavats” | ICEfusion.dev