I recently got a chance to review Wiley's book Mastering JavaServer Faces by Bill Dudney, Jonathan Lehr, Bill Willis, and LeRoy Mattingly. Overall, this is a nice book if you're looking to get involved in JSF technology.
Chapter list: JSF Patterns and Architecture; Elements of JSF; JSF Request-Processing Life Cycle; JSF Configuration; JSP Integration in JSF; UI Components; Navigation, Actions, and Listeners; Validation and Conversion; Building JSF Applications; Custom JSF Components; Converting a Struts Application to JSF; What's on the Web Site; References; Index
This is primarily a learning tool for JSF with a fair amount of reference material thrown in. In chapters 4 through 8, you'll touch on each main area of JSF coding, and the authors provide a solid mix of learning and reference lists for your on-going use as you continue down the JSF path. They don't skimp on code listings, so you'll have some decent examples to draw upon as you start to build your own applications. They also use a variety of UML diagrams to show the flow of a JSF program and how the class structure is laid out. This is good in that you'll run into this type of notation in quite a few places, so you'll get a good understanding of it here.
The other thing I liked about this book was the "why" portion in the patterns and architecture section. Too often, a book that is teaching you a new technology will not cover a lot of best practices and patterns on how programs should be built using the new tool. By providing this type of information up front, the reader should be able to get into the right mindset and develop solid coding practices and concepts from the start.
Bottom line... a solid book with good information, and you should be happy with the result.