## org.apache.jasper
Class JspC

    java.lang.Object
      org.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.