If you are looking at learning JSF from the scratch, then this is a very good book. The code listing with author's comments very clearly explain how each aspect of code impacts behavior. I am comfortable with JSF 1.2 now. But learning the technology was a little uphill. I am sure, had I read this book, it would have been less uphill and would have taken less time to understand what each aspect of code meant.
I read this book to learn about the features what were newly introduced in version 2 of JSF. And it was a dis-appointment on that front. Like a previous reviewer notes, the book was written for JSF 1.2 and then they added a page or two of JSF 2.0 (they make references to composite:interface, @SessionScoped annotation and such which are JSF 2 only features) and called it a JSF 2.0 book. So that is the downside.