JSF 1.2 Components (Book Review)
Download Chapter 2: Facelets Components as a PDF
In detail:Initially hesitant to buy a reference on components, I have to admit that I was surprised to learn so much by reading through this book. As a member of the JavaServer Faces 2.0 expert group, and a full-time software engineer, components are not my strong-suit. If you’re at all like me, then you’re probably asking yourself the same question I did: “What can I learn in this book that I can’t find on Google? JavaServer Faces has a huge online community, and there’s a lot of information available already.” It’s a valid question, but you should keep reading because this book offers something important that I rarely find in blog entries or wikis: “features you wouldn’t think to look for; features that you wish you’d thought of, or don’t know how to make yourself.” I wish I had found this book when I started using JSF, because I’d probably have been more comfortable, and much more productive with our component side of the life-cycle, so to speak; I discovered features of the framework, and pre-made UI-tools that I wish I’d known about years ago.
Things you’ll learn about:Modal windows, menus, wizards and workflows, AJAX anything with Ajax4JSF, i18n and localization, gCal-like schedules with Apache Tomahawk, multi-field validation, calendars, charts and graphs, file-uploads, user permissions/security, skinning, styling, and all major component libraries are covered in this book (save PrimeFaces, which gets a mere mention.) If you think you’re looking at “Just another book on JSF component writing,” that’s not entirely the case. This book provides real solutions, real examples on how to get started writing JSF applications using existing component libraries and plug-ins. There are two types of chapters in this book: tutorials and references. The tutorials will get you up and running with a quick example, while the reference sections go in depth on usage of individual components within each library. You’ll also (as a bonus, in my opinion) get some appetite-whetting information on the JBoss Seam framework, which is a user-friendly and business-oriented extension to the Java EE technologies. I didn’t get a very good picture of all of the concepts until I actually looked at the code samples (downloadable here, or just follow the link in the preface,) but that’s hardly a strong criticism; though, it may have helped if the code samples were more explicitly, frequently referenced.
In the end “The title doesn’t lie”:
- I haven’t seen a more comprehensive book on component libraries and component writing made available to date.
- JSF2 component writing has been simplified, but if you want to supplement your app with everyday things like in-place editing, accordions, and more, you’re going to want good examples; this book provides examples in abundance (even examples of JSF2 EzComp, which is a dream to use. UI like it was meant to be)
- Even if components and UI design are not your strong-point, that is exactly why you should read this book; it makes component-based design easy to understand, and easy to implement.
End notes:Make sure you check out www.javaserverfaces.org. It’s a great starting point and reference for JSF that you will undoubtably bookmark if doing a lot of work, and doing the work with this book. Also check out http://ocpsoft.com/prettyfaces/ for more information on Pretty URLs in JSF, and building client-facing JSF web applications.
About the author:
Lincoln Baxter, III is the Chief Editor of Red Hat Developers, and has worked extensively on JBoss open-source projects; most notably as creator & project lead of JBoss Forge, author of Errai UI, and Project Lead of JBoss Windup. This content represents his personal opinions, not those of his employer.
He is a founder of OCPsoft, the author of PrettyFaces and Rewrite, the leading URL-rewriting extensions for Servlet, Java EE, and Java web frameworks; he is also the author of PrettyTime, social-style date and timestamp formatting for Java. When he is not swimming, running, or playing competitive Magic: The Gathering, Lincoln is focused on promoting open-source software and making technology more accessible for everyone.