Professional Apache Tomcat
The book covers every aspect of installing and configuring Tomcat in a great deal of depth, detailing its every aspect. From standalone use (where Tomcat is used as a general web server as well as for serving Java content), to integration with the leading web servers Apache (both Unix and Windows versions) and Microsoft's Internet Information Services, nothing appears to have been left out (however, integration with Netscape's Enterprise Server is mentioned in passing early on, but doesn't appear again).
Being only a month old, it's pretty much bang up to date, covering Tomcat 3.x, 4.0.x and 4.1.x with Apache 1.3.x and 2.0.x and IIS 4 and 5.
The book starts with an introduction to the Apache project, and Tomcat's place in the wider scheme of things. The historical progression in serving dynamic web content from CGI to Servlets and JSP is charted, and there's an overview of JSP tags and general web application architecture. This is interesting enough and useful as background, but as this book is intended for administrators, it's covered quickly in the first two chapters, and the main business of installing Tomcat gets underway in chapter 3.
Installation is discussed with both Windows and Linux users in mind, from both binary and source distributions. As the Tomcat source is usually built with Ant, build and installation of this tool is also discussed (Ant and Log4j, both also part of Jakarta, get chapters of their own later in the book). From there, basic configuration of the standalone server followed by detailed examinations of the components that make up Tomcat's architecture fills the next 200 or so pages.
Serious users of Tomcat will wish to employ Tomcat with an existing web server, and four chapters concentrate on this job. There is more emphasis on Apache than IIS, though given Apache's dominance of the web server field, this is understandable. There is inevitably a certain amount of detail aimed at Apache and IIS configuration, and a basic knowledge of both is assumed throughout. However, any necessary information is included in detail; for example the (Apache) connector modules mod_webapp and mod_jk/jk2 are given a thorough treatment, describing their use from source installation to configuration, together with the pros and cons of the various connectors available. Beyond that, we learn how to design larger-scale setups, with an explanation of load balancing techniques and scaling of the system, and performance testing with JMeter, yet another Jakarta project component.
As ever, security is a major concern and gets a lot of emphasis. Before client authentication and the use of SSL are discussed, there's an overview of basic system security with Unix and Windows. This should be teaching granny to suck eggs for a book aimed at administrators, but it's only a few pages and completes the subject. More interesting are the sections on security realms and user/client authentication. We are presented with examples of authenticating against a MySQL database with JDBC (database connectivity with JDBC is a big enough subject in its own right, and so gets a separate chapter too), and digest authentication. We then move on to encryption with SSL: using Tomcat itself with the JSSE and PureTLS Java SSL implementations, then later with Apache and SSL (setting up mod_ssl with Apache gets a very useful appendix of its own, taken from Professional Apache 2.0, another Wrox book). Again, there's lots of detail, right down to how to get hold of signed certificates for your server. Here the book's general emphasis on Apache over IIS is most apparent, as SSL with IIS is not discussed at all. However, I have no experience with IIS, so I can't say for sure how serious this omission might be.
There's a very brief appendix on setting up Apache's Axis SOAP toolkit, but without any mention of SOAP appearing elsewhere in the book. As other concepts are introduced so well, it's a curious addition.
With nine co-authors (though only four got onto the cover photograph - I wonder if they drew straws?), one might expect wildly different styles throughout the book, but each chapter is consistently and clearly laid out with diagrams and relevant configuration file fragments where necessary. There's little levity and it's all written in a very business-like manner, but then this is hardly a subject you'd choose for holiday reading.
Professional Apache Tomcat is surely the definitive book on the subject. I recently used it to integrate Tomcat 4 with an existing Apache 2 installation, and everything went very smoothly. More than just a set of tutorials, it offers a thorough description of the whole architecture, and makes an excellent companion to either of Wrox's Professional Apache books.
There's no CD with the book, but Wrox's website provides some support code, and there are lively forums for readers at p2p.wrox.com.
You can purchase Professional Apache Tomcat from bn.com. Slashdot welcomes readers' book reviews -- to see your own review here, read the book review guidelines, then visit the submission page.
A bit like "Advanced use of .htaccess" or "Windows Start Menu volume 1"?
Every latest wrox book is a common recipe:
- Take a red cover;
- Fast time-to-market, by any means;
- By any means, i mean: "-Oh, we need a book about Tomcat, sure... Hey, call India. How much chapters we need? Fifteen? Yeah right, ill pay each Indian R$ 10 per chapter... But i want fifteen authors involved".
- Takes either the most handsome or the most weird, depending on their looks. Makes a professional quality-looking photo. Merge with the cover.
Whats next? Shipments from New Delhi and Bombay?
Compared to Weblogic and especially Websphere, it's so incredibly simple it's silly. (Websphere especially is a *nightmare* to install and configure.)
I am a professor at a large technical college. I use Tomcat in my Distributed Java class and I have to say this is one of the finest books on Tomcat I have seen. I have recommended this book to all of my students.
The book is well-laid out (moreso than most of the GNU/Hippy students!). It offers a good overview of all of the major pieces of functionality in Tomcat and does a particularly good job of describing the different manners which you can integrate Tomcat and Apache.
My only complaint might be that the section on Axis was extremly light-weight. I would have loved to see more detail in this chapter, even though the information in the chapter was a good starter.
Yes, tomcat is simple enough to begin using for yourself, but this book aims at the industrial uses of it.
Documentation mostly tells you what a system does. Books (wrox, oreilly) mostly tell you how to set up a system to do what you want it to do, and explain uses that you might not have thought of.
I like and respect the writers for wrox, and they wouldn't write about it if they didn't think it was useful.
If you are thinking about intergrating JSPs or applets into your already existing complex web architechure, then I would probably buy a book that has professtionals outline exactly what to do, and what best practices there are.
Why, o why must the sky fall when I've learned to fly?
You should probably see the documentaion of Tomcat project (jakarta.apache.org). Tomcat is a Servlet and JSP engine. The jakarta project itself has several other sub-projects with various Java tools (even things like ant -- java/xml based make, templating engines, logging and testing frameworks, etc., so it is fairly broad in scope, and most are relevant to Tomcat).
Apache and Tomcat complement each other, so they should be considered as partners. As such Apache + CGI/Modperl/ModPHP leads IIS... Add Tomcat to the mix and as they say, "The best gets better".
S
Having used Tomcat quite a bit, some things aren't as easy as they should be. Doing a simple stand alone installation takes only a few minutes on a clean system, but frequently the system has weird configurations. There are certain things Tomcat documentation could use improvement, so the book is a nice addition. Often I find documentation is written for those with experience and isn't written in plain english for newbies. Looking at the number of posts on tomcat-user mailing list, more than half the questions are due to user error and documentation. More documentation is always a good thing. well most of the time.
All in all, good work Wrox!
We have been using Tomcat for almost 3 years now and we haven't had any unscheduled downtime yet.
We first started to use it as a development platform. The idea was, "let's develop a Servlet/JSP based application and we will choose later the production server". We wanted to test the application/web servers on our specific application. We though we will end up buying some commercial application. But when the time came to go to production Tomcat had proved itself. It was more than good enough.
We know we can get some extra performance by switching to other web servers, but we don't really need to, Tomcat is more than fast enough. Considering in the global performance of the application, the impact of Tomcat is minimal, as opposed to the database or the LDAP. Our time is better spend improving the database side of the app. Besides Tomcat is very easy to use the source code is very easy to read (as opposed to other open source projects).
At this point, if we switch platform it will be to base our application on JBoss (maybe hooking Tomcat to it). We are not yet convinced that EJBs will benefit our application, but we are seriously considering using JMS.
We are building our application in Java with Netbeans and deploying our apps in Tomcat and Linux. Our dev cost is very low or is 10% to .Net workshop. Our site is internal and it has very few issues and the apps are very stable and can take a lot of beating. We are looking at TogetherJ for our IDE to do some modelling for our future projects
I think Java and Linux is the future
We see that more and more
Picked up that one yesterday. I bought it cause Rick Hightower (Java Tools for Extreme Programming) wrote the chapter on struts and ant/xdoclet. I haven't been able to go through the whole thing yet, but I need good reference info and insight into how the new Jasper2 engine handles caching of tag libs and some of the quirks that come up in JSP/Servlet development WRT insuring clean separation of data in the various scopes. I'm also very interested in seeing how struts and the JSTL should behave in the container.
I don't think this info is very well covered in the Tomcat docs, dealing with Tomcat development is not the same as the '.htaccess' file as one poster suggested. If your trying to work out why the other guy's JSP/custom taglib stuff isn't as portable as it should be between containers, you really need this type of info.
I'm dissapointed the reviewer sort of glossed over this book, he mentioned the architectural info in the last paragraph, and highlighted all the crap that's already talked about in the Tomcat docs.
I already read most of the open source J2EE/dev mailing lists and visit numerous authors blogs. Trying to tie all this stuff together, while figuring out where it's all headed and discerning the best practices is a bit of a daunting task. The differences between the Jasper and Jasper2 engines is a lot of info, combine with the state of Jakarta-Commons, the rise of Jelly and Maven, and AOP + XRAI coming down the pipe in XDoclet2 and you've got a lot of material to pour through that isn't well documented yet. (ok that's a little out of scope for these 2 books)
I need good books that really help me to formulate development methodologies that scale up and promote efficiency when doing full J2EE app development.
So does anyone have any reading recommendations that will help sort all this out? Should I get this book too, or stick with Mastering Tomcat Development?
Arrogance is Confidence which lacks integrity. -- me
Specifically, an overview of the JServ unistall, Tomcat install on RedHat Linux, and a document that describes config file changes that will be needed.
I have not been impressed with Wrox books in the past. Too many of them have so many authors that the book's focus is poor. Even one Wrox book I have with two authors has examples so mired in their own utility library that I lost track of what the example were trying to accomplish and how. Plus about 1/4th of the book was incomplete reprints of Javadocs and specs that I can get over net (why enclose CDs any longer?).
That said, I will definately check this book out. We use Tomcat a great deal (with Apache and IIS) and the more info, the better.
"Love is a familiar; Love is a devil: there is no evil angel but Love." --William Shakespeare ('Love's Labors Lost')
Now, aside from the irony of the slashdot review pimping the book for barnes & noble, under the Amazon.com terms of service, all reviews become exclusive property of Amazon.com.
Like it or not, this is just as serious of a licensing breach as if Microsoft Word included emacs code.
Do you even lift?
These aren't the 'roids you're looking for.
Try a different JVM if at all possible.. If not, you can configure the JVM to compile useing jikes. The problem you probably have is that the toy compiler that comes with the JDK that's written partially in java, turns out to leek memory (just enough to be annoying if you have a lot of JSPs). There are how-to's online for setting up jikes and tomcat. This issue has been known for a while, but SUN nor Tomcat feel like it's a big enough issue to get upset about. You could also have a look at Jetty which is faster than Tomcat and more stable and yet easier to set up.
Karma Clown
Instead, use the money to license a copy of Resin which is, for lack of a better description, Tomcat on Nitro. It follows the reference implementation of JSP and Servlets just as well as Tomcat does, and even the default configuration, which is tuned for development, outperforms Tomcat.
The configuration of Resin is almost exactly like the config of Tomcat, so I honestly don't see why you'd pick Tomcat over Resin (unless you were having trouble getting the 1.2 or 1.3 JDK installed on your FreeBSD box, something that is historically difficult to do).
A while back, I wrote and published a straightforward how-to for integrating Jakarta into Apache (getting Jakarta to share port 80 with Apache as opposed to using 8080).
h tml
So... if anyone is interested:
http://wass.homelinux.net/howtos/Jakarta_How-To.s
Actually, if you subscribe to the user mailing list I don't think you'd say this. I managed to get by with just the online documentation and google, but is seems like there are quite a few people who can't. Every day we get asked about Apache/Tomcat binding and help with various server.xml and web.xml problems.
I never understand how some people can't use the resources available. Hell, the mailing list archive is online and people can't figure out that they should search there before asking the list. The list is running at about 50+ messages a day. Obviously someone needs this book.
I know someone that covers their wrox books so they don't see the glazed stares of the authors. I just scratch their eyes out with a pocketknife. The covers of my Oreilly books never weird me out....
love is just extroverted narcissism
I don't think a book on the subject is really necessary.
A book is needed if one wants to get published and make money from book sales....
moto411.com
Wrox Press has done a great job
Although Wrox has some good books, their best IMHO being Michael Kay's XSLT book, they are well know (at least around these parts) for egregious spelling, factual, and gramatical errors/mistakes.
My general strategy is that if OReilly or Addison Wesley offer a book, buy that. Only If their text is not available and if the Wrox text is on sale will I think about purchasing the Wrox version.
Ink cartdridges cost more than books these days.