Professional JSP (897 pages) is published by Wrox and written by a team of 16 different authors, it benefits from the different experiences of each of the authors.
The book contains twenty chapters and a further six appendices. The twenty chapters are split into two groups, the first 15 chapters that covers JavaServer Pages (JSP) in detail, and then a further five chapters each of which is a Case Study.
This book covers both JSP 1.0 and 1.1. It also contains a wealth of other useful information, for example the information on cookies and their problems in Chapter 5, JSP Sessions. This detailed coverage of indirect but vitally important information is kept up all the way through the book. Its obvious that the authors are practitioners in JSP, as they cover problems encountered every day by people learning the technology. For example, the problems with HTTP and HTTPS sessions not sharing cookies.
This is an excellent book - my recommendation for anyone working with JSP's or JSP tag libraries - go out and buy it. My only major criticism would be that in Chapter 1, Introducing JavaServer Pages, there is too much focus on how JSP's are converted to Servlets, along with the servlet listings - which is possibly too confusing for those just starting out on JSP.
Chapter 4, JSP and JavaBeans, covers JSP and databases but spends most of the 20 pages devoted to creating and setting up the EJB's and database, the actual time spent on JSP lasts fro around 4 pages. Even then it only covers displaying one row of data from the database. It would have been very useful to have seen how the authors would have tackled the requirement for displaying many rows, or navigating through one row at a time.
Some of the examples are of limited use, and would have perhaps have been more valuable if some thought had gone into making the examples more robust, for example the browse catalog example in Chapter 5 could have done with a order quantity column.
The book focuses too much on the Tomcat server, and doesn't show how to make use of the two leading Java web servers: IBM's Websphere and BEA's WebLogic. It would have been useful to have shown how to setup, use and configure JSP on these two servers as well. Chapter 7, Java Database Connectivity and Connection Pooling, includes code to create a database connection pool, but it would have been better to have shown how to configure the connection pooling already present WebLogic and Websphere.
Despite these minor criticisms, there are still gems throughout the book. For example Chapter 7 includes simple but effective code to benchmark a JSP/JDBC application - useful if you don't have the budget for expensive test tools.
The only omission, is the lack of coverage of Web ARchive (WAR) files. Only briefly mentioned in one of the appendices.
The Case Studies include:
Depending on your work, you may or may not find these useful. the amount of JSP within each one is on the low side. These are more generally applications that happen to make use of JSP at the front. Nevertheless this maybe just what you need to start making use of JSP with larger applications.
There are five main appendices:
As you can see there is a small bias to the book for existing ASP developers, although there is not a requirement to know ASP.
Buy this book! I keep this book to hand wherever I go. I've been working with JSP for the last year, and this is the first book that covers JSP in enough detail to warrant spending money.