Preface

I’ve always enjoyed writing. I was one of those computer geeks who found humanities classes easier, in some ways, than computer science courses-that is, if I could manage to convince my professors that I had actually read the dozens of books they gave me. In the late 1990s, I finally fused my affection for writing with my obsession for software development by writing magazine articles and performing technical book reviews. Then, in 2000, after years of financial consulting with Fortune 500 companies, I took the start-up plunge.

Okay, so it was a little late. But I was jealous of my friends who had joined start-ups and intrigued by all of those wonderful stories in magazine articles. The start-up I chose was an educational application service provider (recently acquired by McGraw-Hill) that, surprisingly, had a real business plan. A key part of our product was a web-based application, and one of my tasks, as chief architect, was to build it (with, of course, the help of other poor souls). Instead of using my own homegrown web application framework, I chose Struts, which at the time was a good decision. As I directed development through a couple of release cycles, I gained an understanding of the good and bad parts of Struts, as well as the issues involved with developing a mission-critical web application with team members who all had different backgrounds.

After two years of burning myself out and neglecting my girlfriend Tracey, I resigned and spent some time getting to know the stranger called Sleep. After we had been sufficiently reacquainted, I inhaled as much information as possible about new technologies, and stumbled across the Java Specification Request (JSR) 127-JavaServer Faces (JSF). JSF seemed like an answer to the growing problem of framework mania. Moreover, since JSF abstracts so many tedious details of web application development, it seemed superior to Struts in many ways. It was clear to me that JSF was the Next Big Thing in Java web development.

Because I was anxious to get back into writing something other than architecture specifications and memos, writing a book on JSF seemed like a good idea. I had reviewed several books for Manning, so I contacted the publisher to discuss writing one about JSF. After some lobbying, Manning agreed, and the JavaServer Faces in Action project was born. Little did we know that the specification would go through radical changes before its final (late) release in March 2004. (If I had a crystal ball, I would certainly not have written so much of it in early 2003; rewriting is just not fun.)

Throughout the last year and half, a lot has happened. In May 2003, I married Tracey (I suppose leaving the start-up was a good thing after all). Later that year, I launched JSF Central, a web site dedicated to the JSF community, chock-full of resources and a handy FAQ. And finally, on March 3, 2004, JSF 1.0 was released (with the 1.1 maintenance release appearing in May). The result is a solid technology that I believe will add fire to the world of Java web development, not only by making life easier for day-to-day development but also by igniting a third-party user interface (UI) component industry, ? la Microsoft’s ASP.NET Web Forms.

To that end, I’ve worked hard to ensure that this book will serve as a catalyst on both fronts, not only helping you understand what JSF is, how it works, and how to use it, but also teaching you how to write your own UI components. I’ve also worked with representatives from Oracle, IBM, and Sun to paint a picture of how JSF is integrated into different IDEs. In addition, this text was influenced by my role as editor-in-chief of JSF Central, where I have gained a unique vantage point of the growing JSF ecosystem.

So, there you have it. I hope JavaServer Faces in Action will inspire in you the enthusiasm that I have for this technology and serve as a useful tool in your own projects. In the meantime, I intend to reacquaint myself with that old friend, Sleep. Feel free to send your comments about this book to kmann@virtua.com or post them in the Author Online forum for this book at www.manning.com/mann; once awake, I’ll be happy to read them.