James,
Very controversial book.
I love the
Java code examples there for the GoF design
patterns, but the book is full of mistakes and sometimes very hard to read. Please don't make it your primary book. I really regret that I relied on it for too long. It's also very hard when the publishing house makes no attempt to support it - errata page, questions, etc.
On the other hand there are some outstanding books out there, such as:
Java Server Programming, J2EE Edition
Design Patterns � GoF
HTTP Essentials
Cade's book
UML Distilled
Core J2EE Patterns (for second part)
-- Dan