Main JSP compiler class. This class uses Ant for compiling.
log
protected org.apache.commons.logging.Log log
pageInfo
protected org.apache.jasper.compiler.PageInfo pageInfo
tfp
protected org.apache.jasper.compiler.TagFileProcessor tfp
compile
public void compile()
throws FileNotFoundException,
JasperException,
Exception
Compile the jsp file from the current engine context
compile
public void compile(boolean compileClass)
throws FileNotFoundException,
JasperException,
Exception
Compile the jsp file from the current engine context. As an side-
effect, tag files that are referenced by this page are also compiled.
compileClass
- If true, generate both .java and .class file
If false, generate only .java file
compile
public void compile(boolean compileClass,
boolean jspcMode)
throws FileNotFoundException,
JasperException,
Exception
Compile the jsp file from the current engine context. As an side-
effect, tag files that are referenced by this page are also compiled.
compileClass
- If true, generate both .java and .class file
If false, generate only .java filejspcMode
- true if invoked from JspC, false otherwise
generateClass
protected abstract void generateClass(String[] smap)
throws FileNotFoundException,
JasperException,
Exception
Compile the servlet from .java file to .class file
generateJava
protected String[] generateJava()
throws Exception
Compile the jsp file into equivalent servlet in .java file
- a smap for the current JSP page, if one is generated,
null otherwise
getErrorDispatcher
public ErrorDispatcher getErrorDispatcher()
Gets the error dispatcher.
getPageInfo
public org.apache.jasper.compiler.PageInfo getPageInfo()
Gets the info about the page under compilation
getPageNodes
public Node.Nodes getPageNodes()
Retrieves the parsed nodes of the JSP page, if they are available.
May return null. Used in development mode for generating detailed
error messages. http://issues.apache.org/bugzilla/show_bug.cgi?id=37062.
isOutDated
public boolean isOutDated()
This is a protected method intended to be overridden by
subclasses of Compiler. This is used by the compile method
to do all the compilation.
isOutDated
public boolean isOutDated(boolean checkClass)
Determine if a compilation is necessary by checking the time stamp
of the JSP page with that of the corresponding .class or .java file.
If the page has dependencies, the check is also extended to its
dependeants, and so on.
This method can by overidden by a subclasses of Compiler.
checkClass
- If true, check against .class file,
if false, check against .java file.
removeGeneratedClassFiles
public void removeGeneratedClassFiles()
removeGeneratedFiles
public void removeGeneratedFiles()
Remove generated files