org.apache.jasper
Class JspC

java.lang.Object
  extended byorg.apache.jasper.JspC
All Implemented Interfaces:
Options

public class JspC
extends java.lang.Object
implements Options

Shell for the jspc compiler. Handles all options associated with the command line and creates compilation contexts which it then compiles according to the specified options. This version can process files from a _single_ webapp at once, i.e. a single docbase can be specified. It can be used as a Ant task using:

     <taskdef classname="org.apache.jasper.JspC" name="jasper2" >
        <classpath>
            <pathelement location="${java.home}/../lib/tools.jar"/>
            <fileset dir="${ENV.CATALINA_HOME}/server/lib">
                <include name="*.jar"/>
            </fileset>
            <fileset dir="${ENV.CATALINA_HOME}/common/lib">
                <include name="*.jar"/>
            </fileset>
            <path refid="myjars"/>
         </classpath>
    </taskdef>

    <jasper2 verbose="0" 
             package="my.package"
             uriroot="${webapps.dir}/${webapp.name}"
             webXmlFragment="${build.dir}/generated_web.xml" 
             outputDir="${webapp.dir}/${webapp.name}/WEB-INF/src/my/package" />
 

Author:
Danno Ferrin, Pierre Delisle, Costin Manolache

Field Summary
static int ALL_WEBXML
           
static int DEFAULT_DIE_LEVEL
           
static java.lang.String DEFAULT_IE_CLASS_ID
           
static int INC_WEBXML
           
static java.lang.String LIST_ERRORS
           
static int NO_DIE_LEVEL
           
static int NO_WEBXML
           
static java.lang.String SHOW_SUCCESS
           
static java.lang.String SWITCH_CLASS_NAME
           
static java.lang.String SWITCH_COMPILE
           
static java.lang.String SWITCH_DIE
           
static java.lang.String SWITCH_FILE_WEBAPP
           
static java.lang.String SWITCH_FULL_STOP
           
static java.lang.String SWITCH_IE_CLASS_ID
           
static java.lang.String SWITCH_MAPPED
           
static java.lang.String SWITCH_OUTPUT_DIR
           
static java.lang.String SWITCH_OUTPUT_SIMPLE_DIR
           
static java.lang.String SWITCH_PACKAGE_NAME
           
static java.lang.String SWITCH_QUIET
           
static java.lang.String SWITCH_URI_BASE
           
static java.lang.String SWITCH_URI_ROOT
           
static java.lang.String SWITCH_VERBOSE
           
static java.lang.String SWITCH_WEBAPP_INC
           
static java.lang.String SWITCH_WEBAPP_XML
           
 
Constructor Summary
JspC()
           
 
Method Summary
 void execute()
           
 void generateWebMapping(java.lang.String file, JspCompilationContext clctxt)
           
 int getCheckInterval()
          Background compilation check intervals in seconds
 boolean getClassDebugInfo()
          Should we include debug information in compiled class?
 java.lang.String getClassPath()
          What classpath should I use while compiling the servlets generated from JSP files?
 java.lang.String getCompiler()
          Compiler to use.
 boolean getDevelopment()
          Is Jasper being used in development mode?
 boolean getFork()
          boolean flag to tell Ant whether to fork JSP page compilations.
 java.lang.String getIeClassId()
          Class ID for use in the plugin tag when the browser is IE.
 java.lang.String getJavaEncoding()
          Java platform encoding to generate the JSP page servlet.
 java.lang.String getJspCompilerPath()
           
 java.lang.Class getJspCompilerPlugin()
           
 int getJspVerbosityLevel()
           
 boolean getKeepGenerated()
          Are we keeping generated code around?
 boolean getMappedFile()
          Are we supporting HTML mapped servlets?
 java.lang.Object getProtectionDomain()
           
 boolean getReloading()
          JSP reloading check ?
 java.io.File getScratchDir()
          What is my scratch dir?
 boolean getSendErrorToClient()
          Should errors be sent to client or thrown into stderr?
 TldLocationsCache getTldLocationsCache()
          The cache for the location of the TLD's for the various tag libraries 'exposed' by the web application.
 boolean isPoolingEnabled()
          Returns true if tag handler pooling is enabled, false otherwise.
static void main(java.lang.String[] arg)
           
 boolean processFile(java.lang.String file)
           
 void scanFiles(java.io.File base)
          Locate all jsp files in the webapp.
 void setClassDebugInfo(boolean b)
           
 void setClassName(java.lang.String p)
          Class name of the generated file ( without package ).
 void setClassPath(java.lang.String s)
           
 void setCompile(boolean b)
           
 void setCompiler(java.lang.String c)
           
static void setLog(java.io.PrintStream log)
          allows user to set where the log goes other than System.out
 void setOutputDir(java.lang.String s)
           
 void setPackage(java.lang.String p)
           
 void setUriroot(java.lang.String s)
          Base dir for the webapp.
 void setValidateXml(boolean b)
           
 void setVerbose(int level)
           
 void setWebXmlFragment(java.lang.String s)
          File where we generate a web.xml fragment with the class definitions.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

DEFAULT_IE_CLASS_ID

public static final java.lang.String DEFAULT_IE_CLASS_ID
See Also:
Constant Field Values

SWITCH_VERBOSE

public static final java.lang.String SWITCH_VERBOSE
See Also:
Constant Field Values

SWITCH_QUIET

public static final java.lang.String SWITCH_QUIET
See Also:
Constant Field Values

SWITCH_OUTPUT_DIR

public static final java.lang.String SWITCH_OUTPUT_DIR
See Also:
Constant Field Values

SWITCH_OUTPUT_SIMPLE_DIR

public static final java.lang.String SWITCH_OUTPUT_SIMPLE_DIR
See Also:
Constant Field Values

SWITCH_IE_CLASS_ID

public static final java.lang.String SWITCH_IE_CLASS_ID
See Also:
Constant Field Values

SWITCH_PACKAGE_NAME

public static final java.lang.String SWITCH_PACKAGE_NAME
See Also:
Constant Field Values

SWITCH_CLASS_NAME

public static final java.lang.String SWITCH_CLASS_NAME
See Also:
Constant Field Values

SWITCH_FULL_STOP

public static final java.lang.String SWITCH_FULL_STOP
See Also:
Constant Field Values

SWITCH_COMPILE

public static final java.lang.String SWITCH_COMPILE
See Also:
Constant Field Values

SWITCH_URI_BASE

public static final java.lang.String SWITCH_URI_BASE
See Also:
Constant Field Values

SWITCH_URI_ROOT

public static final java.lang.String SWITCH_URI_ROOT
See Also:
Constant Field Values

SWITCH_FILE_WEBAPP

public static final java.lang.String SWITCH_FILE_WEBAPP
See Also:
Constant Field Values

SWITCH_WEBAPP_INC

public static final java.lang.String SWITCH_WEBAPP_INC
See Also:
Constant Field Values

SWITCH_WEBAPP_XML

public static final java.lang.String SWITCH_WEBAPP_XML
See Also:
Constant Field Values

SWITCH_MAPPED

public static final java.lang.String SWITCH_MAPPED
See Also:
Constant Field Values

SWITCH_DIE

public static final java.lang.String SWITCH_DIE
See Also:
Constant Field Values

SHOW_SUCCESS

public static final java.lang.String SHOW_SUCCESS
See Also:
Constant Field Values

LIST_ERRORS

public static final java.lang.String LIST_ERRORS
See Also:
Constant Field Values

NO_WEBXML

public static final int NO_WEBXML
See Also:
Constant Field Values

INC_WEBXML

public static final int INC_WEBXML
See Also:
Constant Field Values

ALL_WEBXML

public static final int ALL_WEBXML
See Also:
Constant Field Values

DEFAULT_DIE_LEVEL

public static final int DEFAULT_DIE_LEVEL
See Also:
Constant Field Values

NO_DIE_LEVEL

public static final int NO_DIE_LEVEL
See Also:
Constant Field Values
Constructor Detail

JspC

public JspC()
Method Detail

getKeepGenerated

public boolean getKeepGenerated()
Description copied from interface: Options
Are we keeping generated code around?

Specified by:
getKeepGenerated in interface Options

isPoolingEnabled

public boolean isPoolingEnabled()
Description copied from interface: Options
Returns true if tag handler pooling is enabled, false otherwise.

Specified by:
isPoolingEnabled in interface Options

getMappedFile

public boolean getMappedFile()
Are we supporting HTML mapped servlets?

Specified by:
getMappedFile in interface Options

getProtectionDomain

public java.lang.Object getProtectionDomain()

getSendErrorToClient

public boolean getSendErrorToClient()
Description copied from interface: Options
Should errors be sent to client or thrown into stderr?

Specified by:
getSendErrorToClient in interface Options

setClassDebugInfo

public void setClassDebugInfo(boolean b)

getClassDebugInfo

public boolean getClassDebugInfo()
Description copied from interface: Options
Should we include debug information in compiled class?

Specified by:
getClassDebugInfo in interface Options

getCheckInterval

public int getCheckInterval()
Background compilation check intervals in seconds

Specified by:
getCheckInterval in interface Options

getDevelopment

public boolean getDevelopment()
Is Jasper being used in development mode?

Specified by:
getDevelopment in interface Options

getReloading

public boolean getReloading()
JSP reloading check ?

Specified by:
getReloading in interface Options

getIeClassId

public java.lang.String getIeClassId()
Description copied from interface: Options
Class ID for use in the plugin tag when the browser is IE.

Specified by:
getIeClassId in interface Options

getJspVerbosityLevel

public int getJspVerbosityLevel()

getScratchDir

public java.io.File getScratchDir()
Description copied from interface: Options
What is my scratch dir?

Specified by:
getScratchDir in interface Options

getJspCompilerPlugin

public java.lang.Class getJspCompilerPlugin()

getJspCompilerPath

public java.lang.String getJspCompilerPath()

getCompiler

public java.lang.String getCompiler()
Compiler to use.

Specified by:
getCompiler in interface Options

setCompiler

public void setCompiler(java.lang.String c)

getTldLocationsCache

public TldLocationsCache getTldLocationsCache()
Description copied from interface: Options
The cache for the location of the TLD's for the various tag libraries 'exposed' by the web application. A tag library is 'exposed' either explicitely in web.xml or implicitely via the uri tag in the TLD of a taglib deployed in a jar file (WEB-INF/lib).

Specified by:
getTldLocationsCache in interface Options
Returns:
the instance of the TldLocationsCache for the web-application.

getJavaEncoding

public java.lang.String getJavaEncoding()
Description copied from interface: Options
Java platform encoding to generate the JSP page servlet.

Specified by:
getJavaEncoding in interface Options

getFork

public boolean getFork()
Description copied from interface: Options
boolean flag to tell Ant whether to fork JSP page compilations.

Specified by:
getFork in interface Options

getClassPath

public java.lang.String getClassPath()
Description copied from interface: Options
What classpath should I use while compiling the servlets generated from JSP files?

Specified by:
getClassPath in interface Options

setClassPath

public void setClassPath(java.lang.String s)

setUriroot

public void setUriroot(java.lang.String s)
Base dir for the webapp. Used to generate class names and resolve includes


setVerbose

public void setVerbose(int level)

setCompile

public void setCompile(boolean b)

setValidateXml

public void setValidateXml(boolean b)

setOutputDir

public void setOutputDir(java.lang.String s)

setPackage

public void setPackage(java.lang.String p)

setClassName

public void setClassName(java.lang.String p)
Class name of the generated file ( without package ). Can only be used if a single file is converted. XXX Do we need this feature ?


setWebXmlFragment

public void setWebXmlFragment(java.lang.String s)
File where we generate a web.xml fragment with the class definitions.


generateWebMapping

public void generateWebMapping(java.lang.String file,
                               JspCompilationContext clctxt)
                        throws java.io.IOException
Throws:
java.io.IOException

processFile

public boolean processFile(java.lang.String file)
                    throws JasperException
Throws:
JasperException

scanFiles

public void scanFiles(java.io.File base)
Locate all jsp files in the webapp. Used if no explicit jsps are specified.


execute

public void execute()
             throws JasperException
Throws:
JasperException

main

public static void main(java.lang.String[] arg)

setLog

public static void setLog(java.io.PrintStream log)
allows user to set where the log goes other than System.out

Parameters:
log -


Copyright © 2000 Apache Software Foundation. All Rights Reserved.