When a generator implements ClassDeclarationPhase, its generate
method will only be invoked while generating the servlet's class
body and not during the service method phase.
JspCompiler is an implementation of Compiler with a funky code
mangling and code generation scheme!
The reason that it is both a sub-class of compiler and an implementation
of mangler is because the isOutDated method that is overridden and the
name mangulation both depend on the actual existance of other class and
java files.
In order to fix the problem of failing to compile big JSPs
with large # of tags using sun.tools.javac.Main with JDK 1.4.x,
this default compiler is modified to use sun.tools.javac.Main
only in the case of JDK 1.3.x (or earlier JDK versions) and use
com.sun.tools.javac.Main in the case of JDK 1.4.x.