Trying to Be Too Much?
The reason I bought this book was so I could quickly get through some hands-on examples and see the power of WTP. Also, I thought it would be really helpful to see various web development tools through the lens of Eclipse development. After going through it, though, I'm afraid I can't recommend the book for those purposes.
But first, let me applaud the web development "wisdom" portions of the book. There are some really good "why are we doing this?" and "why are we doing it this way?" explanations in this book. Nothing to do with WTP, really, but these portions of the book were very well done.
The majority and purpose of the book are the hands-on exercises. Here's where I had some issues. Throughout the exercises, the reader is always being asked to go out and download some tool or another. I spent way too much time at update sites, trying to get the right versions of things. I would rather all of this be established up-front. Just say "if you want to do all of the exercises, download these specific versions of these 8 tools". Later, there can be some explanation as to why those tools over others, but lets get a platform that's going to do everything, and not sprinkle installation issues throughout. In fact, I think that in an Eclipse book, they instructions should say, "start with a clean install of (some version of Eclipse) and build it with (these versions of these plugins), and you will be able to do every exercise."
I know it's not the job of the authors of this book to detail a tool's installation, but a line like "check the (some tool) documentation for the exact list" is a cop out. Presumably, the authors just got done using the list, so a few words as to how to find the list within the documentation would be really helpful. With a little guidance, digging time could be reduced from an hour to two minutes.
The exercises had separate iterations, which I found helpful. I did run into discontinuities that required some improvisation, though. I'm pretty sure that nobody sat down with an empty machine, installed all of the tools and ran all of the exercises, start to finish. Or if they did, the book didn't get updated.
The book was written using WTP 1.5, EJB 2.1, etc. These are older versions than what's currently available, but it's not a problem to run through the exercises with the older versions. The problem comes at the end of the exercise when they give you a "tease" about how cool the next version is. I resisted temptation for almost the whole book but finally I grabbed some updated versions to try out the cool new stuff! Bad idea. I backed-up to earlier exercises, and although I was able to replicate most of them under the newer versions of things, there's not enough detail to get through quickly (lots of trial and error). And when I was finished, I wasn't convinced it was an optimal result. But I just couldn't sit still with the old versions when the authors were plugging the new versions.
A picky issue I have concerns references to other books. I don't think they belong in the main text, really. They wouldn't even need footnotes. Just a recommended reading by chapter would be sufficient. If you are more of an academic than someone who needs to apply this stuff quickly, maybe reading these other books might be a possibility, but I'll tell you I'm not going to make time to read a 9 year old EJB book!
I'm not sure that pitching to a WTP user and a WTP volunteer developer in the same book was really in the flow of the book. This is a picky one too, and there weren't that many pages dedicated to this topic. I suppose there's a need to recruit, it's just that I'm not sure the audience overlaps very much.
The bottom line for me is that a book should simplify the task of setting up the environment so that I can concentrate on the "why" and "how" of coding. Although I wouldn't have enjoyed the "wisdom" and other continuity the book offered, I don't think I saved any time on the development environment. I spent as much time tinkering with the development environment as I would have if I had just grabbed 6 or 8 tutorials from 6 or 8 different authors off of the internet.
Review from Web Tools Platform Past Committer
To give a brief background about myself. I have been one of the primary contributor and committer of the Web Tools Platform (WTP) eclipse tools project since its inception through WTP 1.5 release. I contributed the Validation Framework component for this project. I read a large portion of this book and can say that this most comprehensive book that explains the complete WTP in a step by step fashion that can be help you easily understand the whole WTP project, its sub projects, its components and features through several real world examples. I strongly recommend this book to all users and contributors of WTP.
Vijay Bhadriraju, IBM
Excellent: How books on programming should be written
Eclipse Web Tools Platform: Developing Java(TM) Web Applications
This is an excellent book; I specially liked the iterative approach (for example, for presentation tier, iteration 1: HTML, iteration 2: add CSS, iteration 3: add Javascripts, iteration 4: XML and XSLT, iteration 5: DTD)authors have taken. I have used examples from this book, with Eclipse and NetBeans, of course for Eclipse user this book has added value, since it goes through configuration of Eclipse and recommended practices. Please ignore the gripe about errors in the code; there are two minor errors which are detailed in the errata on book's companion site, it doesn't take more than a minute to fix those two issues.
Authors discuss All three tiers in great detail. How about this, by page 85 you would be deploying a simple web service (and you would be amazed how simple it is).
Great book for getting up and running with WTP
Though I have had some experience in Java, Eclipse, and WTP, a recent project required me to get more into depth. This book got me through the whole development process. It explained to me clean coding techniques when writing web apps in Java, how to get my web server up and running for use with WTP, to get my apps to talk to the server, debugging using different tools, and unit testing in a web environment.
This book was an invaluable addition to my collection, and is also a great reference now that I have mastered these concepts.