My short answer to your question is that Java is big. Within the 920 pages, I cover the entire Java language (except for Java native methods -- although I discuss this topic in Appendix C) and many APIs (in language, utility, I/O, networking, JDBC/database, XML, and web services categories). However, the book is actually quite small. Many topics could not be covered, such as Remote Method Invocation and Corba, Java Sound, and security/NIO.
I wish I could have included all four appendixes in the book, but there is something known as the print-on-demand limit that prevents a book from exceeding 1000 pages cover to cover (or so I was told). However, all four appendixes can be freely downloaded. Appendixes A and B are downloadable from Apress's page for this book (which you can get to from my http://tutortutor.ca/cgi-bin/makepage.cgi?/books/bj7 book page). Appendixes C and D are downloadable from my book page (see the previous link).
The book includes a chapter on Android, which is unfortunate (my publisher insisted on it) because I had planned to use the space for more Java 7 content.
All the best.
I’ve looked at a lot of different solutions, and in my humble opinion Aspose is the way to go. Here’s the link: http://aspose.com