Can't say much about the tools.jar issue; I don't know what it provides and
how standardised that is.
I haven't delved too deeply into the bowels of JBOSS/Tomcat *yet* but as
I understand it, it contains the java compiler.
Here's my understanding in a nutshell, I'm happy to be
corrected/educated if I'm mistaken:
The Sun java compiler is written in java. javac is merely a front-end
to loading and running the correct java code.
Java Server Pages are basically HTML with Java sprinkled within. JSP
containers convert the JSP source to a servlet (.java file) and then
compile the servlet to a .class file. The servlet is then executed
within the container.
The compile step requires a java compiler. Servlet containers I'm
familiar with (Tomcat, jserv, JBOSS+tomcat) require an external
compiler.
AFAIK, they depend on the Sun implementation. I do not know about the
standardization. My guess is there is no standardization between JDK
vendors. It *seems* for Sun JDKs, at least the jarfile and class names
seem consistant. I've never had compiler-related problems running
Tomcat across J2SDKs.
-joe