## 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 an 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, Yoav Shapira

Field Summary
`protected boolean` `addWebXmlMappings`
`protected static int` `ALL_WEBXML`
`protected int` `argPos`
`protected java.lang.String[]` `args`
`protected java.util.Map` `cache`
`protected boolean` `caching`
`protected boolean` `classDebugInfo`
`protected java.lang.String` `classPath`
`protected boolean` `compile`
`protected java.lang.String` `compiler`
`protected java.lang.String` `compilerSourceVM`
`protected java.lang.String` `compilerTargetVM`
`protected JspCServletContext` `context` The servlet context.
`protected static int` `DEFAULT_DIE_LEVEL`
`static java.lang.String` `DEFAULT_IE_CLASS_ID`
`protected static int` `die`
`protected int` `dieLevel`
`protected boolean` `errorOnUseBeanInvalidClassAttribute` Needs better documentation, this data member does.
`protected java.util.List` `extensions` The file extensions to be handled as JSP files.
`protected boolean` `failOnError` Throw an exception if there's a compilation error, or swallow it.
`protected boolean` `fullstop`
`protected boolean` `genStringAsCharArray`
`protected boolean` `helpNeeded`
`protected java.lang.String` `ieClassId`
`protected static int` `INC_WEBXML`
`protected static java.lang.String[]` `insertBefore`
`protected java.lang.String` `javaEncoding` The java file encoding.
`protected JspConfig` `jspConfig`
`protected static java.lang.String` `LIST_ERRORS`
`protected boolean` `listErrors`
`protected java.net.URLClassLoader` `loader`
`protected static Log` `log`
`protected java.io.Writer` `mapout`
`protected boolean` `mappedFile`
`protected java.io.CharArrayWriter` `mappingout`
`protected static int` `NO_DIE_LEVEL`
`protected java.util.List` `pages` The pages.
`protected boolean` `poolingEnabled`
`protected org.apache.tools.ant.Project` `project`
`protected JspRuntimeContext` `rctxt` The runtime context.
`protected java.io.File` `scratchDir`
`protected java.io.CharArrayWriter` `servletout`
`protected static java.lang.String` `SHOW_SUCCESS`
`protected boolean` `showSuccess`
`protected boolean` `smapDumped`
`protected boolean` `smapSuppressed`
`protected static java.lang.String` `SWITCH_CACHE`
`protected static java.lang.String` `SWITCH_CLASS_NAME`
`protected static java.lang.String` `SWITCH_CLASSPATH`
`protected static java.lang.String` `SWITCH_COMPILE`
`protected static java.lang.String` `SWITCH_DIE`
`protected static java.lang.String` `SWITCH_DUMP_SMAP`
`protected static java.lang.String` `SWITCH_ENCODING`
`protected static java.lang.String` `SWITCH_FILE_WEBAPP`
`protected static java.lang.String` `SWITCH_FULL_STOP`
`protected static java.lang.String` `SWITCH_HELP`
`protected static java.lang.String` `SWITCH_MAPPED`
`protected static java.lang.String` `SWITCH_OUTPUT_DIR`
`protected static java.lang.String` `SWITCH_PACKAGE_NAME`
`protected static java.lang.String` `SWITCH_POOLING`
`protected static java.lang.String` `SWITCH_SMAP`
`protected static java.lang.String` `SWITCH_SOURCE`
`protected static java.lang.String` `SWITCH_TARGET`
`protected static java.lang.String` `SWITCH_TRIM_SPACES`
`protected static java.lang.String` `SWITCH_URI_BASE`
`protected static java.lang.String` `SWITCH_URI_ROOT`
`protected static java.lang.String` `SWITCH_VERBOSE`
`protected static java.lang.String` `SWITCH_WEBAPP_INC`
`protected static java.lang.String` `SWITCH_WEBAPP_XML`
`protected static java.lang.String` `SWITCH_XPOWERED_BY`
`protected TagPluginManager` `tagPluginManager`
`protected java.lang.String` `targetClassName`
`protected java.lang.String` `targetPackage`
`protected TldLocationsCache` `tldLocationsCache` Cache for the TLD locations
`protected boolean` `trimSpaces`
`protected java.lang.String` `uriBase`
`protected java.lang.String` `uriRoot`
`protected boolean` `verbose`
`protected java.lang.String` `webxmlFile`
`protected int` `webxmlLevel`
`protected boolean` `xpoweredBy`

Constructor Summary
`JspC()`

Method Summary
`protected void` `addExtension(java.lang.String extension)` Adds the given file extension to the list of extensions handled as JSP files.
`protected void` `completeWebXml()`
`void` `execute()` Executes the compilation.
`void` `generateWebMapping(java.lang.String file, JspCompilationContext clctxt)`
`boolean` `genStringAsCharArray()` Indicates whether text strings are to be generated as char arrays.
`java.util.Map` `getCache()` The web-application wide cache for the returned TreeNode by parseXMLDocument in TagLibraryInfoImpl.parseTLD, if isCaching returns true.
`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.
`java.lang.String` `getCompilerClassName()` Compiler class name to use.
`java.lang.String` `getCompilerSourceVM()` Compiler source VM, e.g. 1.3, 1.4, or 1.5.
`java.lang.String` `getCompilerTargetVM()` The compiler target VM, e.g. 1.1, 1.2, 1.3, 1.4, or 1.5.
`boolean` `getDevelopment()` Is Jasper being used in development mode?
`boolean` `getDisplaySourceFragment()` Should we include a source fragment in exception messages, which could be displayed to the developer ?
`boolean` `getErrorOnUseBeanInvalidClassAttribute()` Returns true if Jasper issues a compilation error instead of a runtime Instantiation error if the class attribute specified in useBean action is invalid.
`java.util.List` `getExtensions()` Returns the list of file extensions that are treated as JSP files.
`boolean` `getFailOnError()`
`boolean` `getFork()` boolean flag to tell Ant whether to fork JSP page compilations.
`java.lang.String` `getIeClassId()` Gets the class-id value that is sent to Internet Explorer when using tags.
`java.lang.String` `getJavaEncoding()` Returns the encoding to use for java files.
`java.lang.String` `getJspCompilerPath()`
`java.lang.Class` `getJspCompilerPlugin()`
`JspConfig` `getJspConfig()` Obtain JSP configuration informantion specified in web.xml.
`boolean` `getKeepGenerated()` Are we keeping generated code around?
`boolean` `getMappedFile()` Are we supporting HTML mapped servlets?
`int` `getModificationTestInterval()` Modification test interval.
`org.apache.tools.ant.Project` `getProject()` Returns the project: may be null if not running inside an Ant project.
`java.lang.Object` `getProtectionDomain()`
`java.io.File` `getScratchDir()` What is my scratch dir?
`boolean` `getSendErrorToClient()` Deprecated.
`TagPluginManager` `getTagPluginManager()` Obtain a Tag Plugin Manager
`int` `getTagPoolSize()`
`TldLocationsCache` `getTldLocationsCache()` The cache for the location of the TLD's for the various tag libraries 'exposed' by the web application.
`boolean` `getTrimSpaces()` Should white spaces between directives or actions be trimmed?
`protected void` `initClassLoader(JspCompilationContext clctxt)` Initializes the classloader as/if needed for the given compilation context.
`protected void` `initServletContext()`
`protected void` `initWebXml()`
`boolean` `isCaching()` Is caching enabled (used for precompilation).
`boolean` `isPoolingEnabled()` Returns true if tag handler pooling is enabled, false otherwise.
`boolean` `isSmapDumped()` Should SMAP info for JSR45 debugging be dumped to a file?
`boolean` `isSmapSuppressed()` Is the generation of SMAP info for JSR45 debuggin suppressed?
`boolean` `isXpoweredBy()` Is generation of X-Powered-By response header enabled/disabled?
`protected void` `locateUriRoot(java.io.File f)` Find the WEB-INF dir by looking up in the directory tree.
`static void` `main(java.lang.String[] arg)`
`protected void` `mergeIntoWebXml()` Include the generated web.xml inside the webapp's web.xml.
`protected java.lang.String` `nextArg()`
`protected java.lang.String` `nextFile()`
`protected void` `processFile(java.lang.String file)`
`protected java.io.File` `resolveFile(java.lang.String s)` Resolves the relative or absolute pathname correctly in both Ant and command-line situations.
`void` `scanFiles(java.io.File base)` Locate all jsp files in the webapp.
`void` `setAddWebXmlMappings(boolean b)`
`void` `setArgs(java.lang.String[] arg)`
`void` `setCaching(boolean caching)`
`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)` Sets the compile flag.
`void` `setCompiler(java.lang.String c)`
`void` `setCompilerSourceVM(java.lang.String vm)`
`void` `setCompilerTargetVM(java.lang.String vm)`
`void` `setErrorOnUseBeanInvalidClassAttribute(boolean b)`
`void` `setFailOnError(boolean b)` Set the option that throws an exception in case of a compilation error.
`void` `setGenStringAsCharArray(boolean genStringAsCharArray)` Determines whether text strings are to be generated as char arrays, which improves performance in some cases.
`void` `setIeClassId(java.lang.String ieClassId)` Sets the class-id value to be sent to Internet Explorer when using tags.
`void` `setJavaEncoding(java.lang.String encodingName)` Sets the encoding to use for java files.
`void` `setJspFiles(java.lang.String jspFiles)` Parses comma-separated list of JSP files to be processed.
`void` `setListErrors(boolean b)`
`void` `setOutputDir(java.lang.String s)`
`void` `setPackage(java.lang.String p)`
`void` `setPoolingEnabled(boolean poolingEnabled)`
`void` `setProject(org.apache.tools.ant.Project theProject)` Sets the project.
`void` `setSmapDumped(boolean smapDumped)` Set smapSuppressed flag.
`void` `setSmapSuppressed(boolean smapSuppressed)` Set smapSuppressed flag.
`void` `setTrimSpaces(boolean ts)`
`void` `setUriroot(java.lang.String s)` Base dir for the webapp.
`void` `setValidateXml(boolean b)`
`void` `setVerbose(int level)` Sets the verbosity level.
`void` `setWebXml(java.lang.String s)` File where we generate a complete web.xml with the class definitions.
`void` `setWebXmlFragment(java.lang.String s)` File where we generate a web.xml fragment with the class definitions.
`void` `setXpoweredBy(boolean xpoweredBy)`

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

### log

    protected static Log log

### SWITCH_VERBOSE

    protected static final java.lang.String SWITCH_VERBOSE

See Also:
  Constant Field Values

### SWITCH_HELP

    protected static final java.lang.String SWITCH_HELP

See Also:
  Constant Field Values

### SWITCH_OUTPUT_DIR

    protected static final java.lang.String SWITCH_OUTPUT_DIR

See Also:
  Constant Field Values

### SWITCH_PACKAGE_NAME

    protected static final java.lang.String SWITCH_PACKAGE_NAME

See Also:
  Constant Field Values

### SWITCH_CACHE

    protected static final java.lang.String SWITCH_CACHE

See Also:
  Constant Field Values

### SWITCH_CLASS_NAME

    protected static final java.lang.String SWITCH_CLASS_NAME

See Also:
  Constant Field Values

### SWITCH_FULL_STOP

    protected static final java.lang.String SWITCH_FULL_STOP

See Also:
  Constant Field Values

### SWITCH_COMPILE

    protected static final java.lang.String SWITCH_COMPILE

See Also:
  Constant Field Values

### SWITCH_SOURCE

    protected static final java.lang.String SWITCH_SOURCE

See Also:
  Constant Field Values

### SWITCH_TARGET

    protected static final java.lang.String SWITCH_TARGET

See Also:
  Constant Field Values

### SWITCH_URI_BASE

    protected static final java.lang.String SWITCH_URI_BASE

See Also:
  Constant Field Values

### SWITCH_URI_ROOT

    protected static final java.lang.String SWITCH_URI_ROOT

See Also:
  Constant Field Values

### SWITCH_FILE_WEBAPP

    protected static final java.lang.String SWITCH_FILE_WEBAPP

See Also:
  Constant Field Values

### SWITCH_WEBAPP_INC

    protected static final java.lang.String SWITCH_WEBAPP_INC

See Also:
  Constant Field Values

### SWITCH_WEBAPP_XML

    protected static final java.lang.String SWITCH_WEBAPP_XML

See Also:
  Constant Field Values

### SWITCH_MAPPED

    protected static final java.lang.String SWITCH_MAPPED

See Also:
  Constant Field Values

### SWITCH_XPOWERED_BY

    protected static final java.lang.String SWITCH_XPOWERED_BY

See Also:
  Constant Field Values

### SWITCH_TRIM_SPACES

    protected static final java.lang.String SWITCH_TRIM_SPACES

See Also:
  Constant Field Values

### SWITCH_CLASSPATH

    protected static final java.lang.String SWITCH_CLASSPATH

See Also:
  Constant Field Values

### SWITCH_DIE

    protected static final java.lang.String SWITCH_DIE

See Also:
  Constant Field Values

### SWITCH_POOLING

    protected static final java.lang.String SWITCH_POOLING

See Also:
  Constant Field Values

### SWITCH_ENCODING

    protected static final java.lang.String SWITCH_ENCODING

See Also:
  Constant Field Values

### SWITCH_SMAP

    protected static final java.lang.String SWITCH_SMAP

See Also:
  Constant Field Values

### SWITCH_DUMP_SMAP

    protected static final java.lang.String SWITCH_DUMP_SMAP

See Also:
  Constant Field Values

### SHOW_SUCCESS

    protected static final java.lang.String SHOW_SUCCESS

See Also:
  Constant Field Values

### LIST_ERRORS

    protected static final java.lang.String LIST_ERRORS

See Also:
  Constant Field Values

### INC_WEBXML

    protected static final int INC_WEBXML

See Also:
  Constant Field Values

### ALL_WEBXML

    protected static final int ALL_WEBXML

See Also:
  Constant Field Values

### DEFAULT_DIE_LEVEL

    protected static final int DEFAULT_DIE_LEVEL

See Also:
  Constant Field Values

### NO_DIE_LEVEL

    protected static final int NO_DIE_LEVEL

See Also:
  Constant Field Values

### insertBefore

    protected static final java.lang.String[] insertBefore

### die

    protected static int die

### classPath

    protected java.lang.String classPath

### loader

    protected java.net.URLClassLoader loader

### trimSpaces

    protected boolean trimSpaces

### genStringAsCharArray

    protected boolean genStringAsCharArray

### xpoweredBy

    protected boolean xpoweredBy

### mappedFile

    protected boolean mappedFile

### poolingEnabled

    protected boolean poolingEnabled

### scratchDir

    protected java.io.File scratchDir

### ieClassId

    protected java.lang.String ieClassId

### targetPackage

    protected java.lang.String targetPackage

### targetClassName

    protected java.lang.String targetClassName

### uriBase

    protected java.lang.String uriBase

### uriRoot

    protected java.lang.String uriRoot

### project

    protected org.apache.tools.ant.Project project

### dieLevel

    protected int dieLevel

### helpNeeded

    protected boolean helpNeeded

### compile

    protected boolean compile

### smapSuppressed

    protected boolean smapSuppressed

### smapDumped

    protected boolean smapDumped

### caching

    protected boolean caching

### cache

    protected java.util.Map cache

### compiler

    protected java.lang.String compiler

### compilerTargetVM

    protected java.lang.String compilerTargetVM

### compilerSourceVM

    protected java.lang.String compilerSourceVM

### classDebugInfo

    protected boolean classDebugInfo

### failOnError

    protected boolean failOnError

  Throw an exception if there's a compilation error, or swallow it. Default is true to preserve old behavior.

### extensions

    protected java.util.List extensions

  The file extensions to be handled as JSP files. Default list is .jsp and .jspx.

### pages

    protected java.util.List pages

  The pages.

### errorOnUseBeanInvalidClassAttribute

    protected boolean errorOnUseBeanInvalidClassAttribute

  Needs better documentation, this data member does. True by default.

### javaEncoding

    protected java.lang.String javaEncoding

  The java file encoding. Default is UTF-8. Added per bugzilla 19622.

### webxmlFile

    protected java.lang.String webxmlFile

### webxmlLevel

    protected int webxmlLevel

### addWebXmlMappings

    protected boolean addWebXmlMappings

### mapout

    protected java.io.Writer mapout

### servletout

    protected java.io.CharArrayWriter servletout

### mappingout

    protected java.io.CharArrayWriter mappingout

### context

    protected JspCServletContext context

  The servlet context.

### rctxt

    protected JspRuntimeContext rctxt

  The runtime context. Maintain a dummy JspRuntimeContext for compiling tag files.

### tldLocationsCache

    protected TldLocationsCache tldLocationsCache

  Cache for the TLD locations

### jspConfig

    protected JspConfig jspConfig

### tagPluginManager

    protected TagPluginManager tagPluginManager

### verbose

    protected boolean verbose

### listErrors

    protected boolean listErrors

### showSuccess

    protected boolean showSuccess

### argPos

    protected int argPos

### fullstop

    protected boolean fullstop

### args

    protected java.lang.String[] args

Constructor Detail

### JspC

    public JspC()

Method Detail

### main

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

### setArgs

    public void setArgs(java.lang.String[] arg)
                 throws JasperException

  Throws:
    `JasperException`

### getKeepGenerated

    public boolean getKeepGenerated()

  Description copied from interface: `Options`
  Are we keeping generated code around?

  Specified by:
    `getKeepGenerated` in interface `Options`

### getTrimSpaces

    public boolean getTrimSpaces()

  Description copied from interface: `Options`
  Should white spaces between directives or actions be trimmed?

  Specified by:
    `getTrimSpaces` in interface `Options`

### setTrimSpaces

    public void setTrimSpaces(boolean ts)

### 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`

### setPoolingEnabled

    public void setPoolingEnabled(boolean poolingEnabled)

### isXpoweredBy

    public boolean isXpoweredBy()

  Description copied from interface: `Options`
  Is generation of X-Powered-By response header enabled/disabled?

  Specified by:
    `isXpoweredBy` in interface `Options`

### setXpoweredBy

    public void setXpoweredBy(boolean xpoweredBy)

### getDisplaySourceFragment

    public boolean getDisplaySourceFragment()

  Description copied from interface: `Options`
  Should we include a source fragment in exception messages, which could be displayed to the developer ?

  Specified by:
    `getDisplaySourceFragment` in interface `Options`

### getErrorOnUseBeanInvalidClassAttribute

    public boolean getErrorOnUseBeanInvalidClassAttribute()

  Description copied from interface: `Options`
  Returns true if Jasper issues a compilation error instead of a runtime Instantiation error if the class attribute specified in useBean action is invalid.

  Specified by:
    `getErrorOnUseBeanInvalidClassAttribute` in interface `Options`

### setErrorOnUseBeanInvalidClassAttribute

    public void setErrorOnUseBeanInvalidClassAttribute(boolean b)

### getTagPoolSize

    public int getTagPoolSize()

### getMappedFile

    public boolean getMappedFile()

  Are we supporting HTML mapped servlets?

  Specified by:
    `getMappedFile` in interface `Options`

### getProtectionDomain

    public java.lang.Object getProtectionDomain()

### getSendErrorToClient

    @Deprecated
    public boolean getSendErrorToClient()

  Deprecated.

  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`

### isCaching

    public boolean isCaching()

  Description copied from interface: `Options`
  Is caching enabled (used for precompilation).

  Specified by:
    `isCaching` in interface `Options`
  See Also:
    `Options.isCaching()`

### setCaching

    public void setCaching(boolean caching)

  See Also:
    `Options.isCaching()`

### getCache

    public java.util.Map getCache()

  Description copied from interface: `Options`
  The web-application wide cache for the returned TreeNode by parseXMLDocument in TagLibraryInfoImpl.parseTLD, if isCaching returns true.

  Specified by:
    `getCache` in interface `Options`
  Returns:
    the Map(String uri, TreeNode tld) instance.
  See Also:
    `Options.getCache()`

### getCheckInterval

    public int getCheckInterval()

  Background compilation check intervals in seconds

  Specified by:
    `getCheckInterval` in interface `Options`

### getModificationTestInterval

    public int getModificationTestInterval()

  Modification test interval.

  Specified by:
    `getModificationTestInterval` in interface `Options`

### getDevelopment

    public boolean getDevelopment()

  Is Jasper being used in development mode?

  Specified by:
    `getDevelopment` in interface `Options`

### isSmapSuppressed

    public boolean isSmapSuppressed()

  Is the generation of SMAP info for JSR45 debuggin suppressed?

  Specified by:
    `isSmapSuppressed` in interface `Options`

### setSmapSuppressed

    public void setSmapSuppressed(boolean smapSuppressed)

  Set smapSuppressed flag.

### isSmapDumped

    public boolean isSmapDumped()

  Should SMAP info for JSR45 debugging be dumped to a file?

  Specified by:
    `isSmapDumped` in interface `Options`

### setSmapDumped

    public void setSmapDumped(boolean smapDumped)

  Set smapSuppressed flag.

### setGenStringAsCharArray

    public void setGenStringAsCharArray(boolean genStringAsCharArray)

  Determines whether text strings are to be generated as char arrays, which improves performance in some cases.

  Parameters:
    `genStringAsCharArray` - true if text strings are to be generated as char arrays, false otherwise

### genStringAsCharArray

    public boolean genStringAsCharArray()

  Indicates whether text strings are to be generated as char arrays.

  Specified by:
    `genStringAsCharArray` in interface `Options`
  Returns:
    true if text strings are to be generated as char arrays, false otherwise

### setIeClassId

    public void setIeClassId(java.lang.String ieClassId)

  Sets the class-id value to be sent to Internet Explorer when using tags.

  Parameters:
    `ieClassId` - Class-id value

### getIeClassId

    public java.lang.String getIeClassId()

  Gets the class-id value that is sent to Internet Explorer when using tags.

  Specified by:
    `getIeClassId` in interface `Options`
  Returns:
    Class-id value

### 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)

### getCompilerClassName

    public java.lang.String getCompilerClassName()

  Compiler class name to use.

  Specified by:
    `getCompilerClassName` in interface `Options`

### getCompilerTargetVM

    public java.lang.String getCompilerTargetVM()

  Description copied from interface: `Options`
  The compiler target VM, e.g. 1.1, 1.2, 1.3, 1.4, or 1.5.

  Specified by:
    `getCompilerTargetVM` in interface `Options`
  See Also:
    `Options.getCompilerTargetVM()`

### setCompilerTargetVM

    public void setCompilerTargetVM(java.lang.String vm)

### getCompilerSourceVM

    public java.lang.String getCompilerSourceVM()

  Description copied from interface: `Options`
  Compiler source VM, e.g. 1.3, 1.4, or 1.5.

  Specified by:
    `getCompilerSourceVM` in interface `Options`
  See Also:
    `Options.getCompilerSourceVM()`

### setCompilerSourceVM

    public void setCompilerSourceVM(java.lang.String vm)

  See Also:
    `Options.getCompilerSourceVM()`

### 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()

  Returns the encoding to use for java files. The default is UTF-8.

  Specified by:
    `getJavaEncoding` in interface `Options`
  Returns:
    String The encoding

### setJavaEncoding

    public void setJavaEncoding(java.lang.String encodingName)

  Sets the encoding to use for java files.

  Parameters:
    `encodingName` - The name, e.g. "UTF-8"

### 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)

### getExtensions

    public java.util.List getExtensions()

  Returns the list of file extensions that are treated as JSP files.

  Returns:
    The list of extensions

### addExtension

    protected void addExtension(java.lang.String extension)

  Adds the given file extension to the list of extensions handled as JSP files.

  Parameters:
    `extension` - The extension to add, e.g. "myjsp"

### setProject

    public void setProject(org.apache.tools.ant.Project theProject)

  Sets the project.

  Parameters:
    `theProject` - The project

### getProject

    public org.apache.tools.ant.Project getProject()

  Returns the project: may be null if not running inside an Ant project.

  Returns:
    The project

### setUriroot

    public void setUriroot(java.lang.String s)

  Base dir for the webapp. Used to generate class names and resolve includes

### setJspFiles

    public void setJspFiles(java.lang.String jspFiles)

  Parses comma-separated list of JSP files to be processed. If the argument is null, nothing is done.

  Each file is interpreted relative to uriroot, unless it is absolute, in which case it must start with uriroot.

  Parameters:
    `jspFiles` - Comma-separated list of JSP files to be processed

### setCompile

    public void setCompile(boolean b)

  Sets the compile flag.

  Parameters:
    `b` - Flag value

### setVerbose

    public void setVerbose(int level)

  Sets the verbosity level. The actual number doesn't matter: if it's greater than zero, the verbose flag will be true.

  Parameters:
    `level` - Positive means verbose

### setValidateXml

    public void setValidateXml(boolean b)

### setListErrors

    public void setListErrors(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.

### setWebXml

    public void setWebXml(java.lang.String s)

  File where we generate a complete web.xml with the class definitions.

### setAddWebXmlMappings

    public void setAddWebXmlMappings(boolean b)

### setFailOnError

    public void setFailOnError(boolean b)

  Set the option that throws an exception in case of a compilation error.

### getFailOnError

    public boolean getFailOnError()

### getJspConfig

    public JspConfig getJspConfig()

  Obtain JSP configuration informantion specified in web.xml.

  Specified by:
    `getJspConfig` in interface `Options`

### getTagPluginManager

    public TagPluginManager getTagPluginManager()

  Description copied from interface: `Options`
  Obtain a Tag Plugin Manager

  Specified by:
    `getTagPluginManager` in interface `Options`

### generateWebMapping

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

  Throws:
    `java.io.IOException`

### mergeIntoWebXml

    protected void mergeIntoWebXml()
                            throws java.io.IOException

  Include the generated web.xml inside the webapp's web.xml.

  Throws:
    `java.io.IOException`

### processFile

    protected void processFile(java.lang.String file)
                        throws JasperException

  Throws:
    `JasperException`

### scanFiles

    public void scanFiles(java.io.File base)
                   throws JasperException

  Locate all jsp files in the webapp. Used if no explicit jsps are specified.

  Throws:
    `JasperException`

### execute

    public void execute()
                 throws JasperException

  Executes the compilation.

  Throws:
    `JasperException` - If an error occurs

### nextArg

    protected java.lang.String nextArg()

### nextFile

    protected java.lang.String nextFile()

### initWebXml

    protected void initWebXml()

### completeWebXml

    protected void completeWebXml()

### initServletContext

    protected void initServletContext()

### initClassLoader

    protected void initClassLoader(JspCompilationContext clctxt)
                            throws java.io.IOException

  Initializes the classloader as/if needed for the given compilation context.

  Parameters:
    `clctxt` - The compilation context
  Throws:
    `java.io.IOException` - If an error occurs

### locateUriRoot

    protected void locateUriRoot(java.io.File f)

  Find the WEB-INF dir by looking up in the directory tree. This is used if no explicit docbase is set, but only files. XXX Maybe we should require the docbase.

### resolveFile

    protected java.io.File resolveFile(java.lang.String s)

  Resolves the relative or absolute pathname correctly in both Ant and command-line situations. If Ant launched us, we should use the basedir of the current project to resolve relative paths. See Bugzilla 35571.

  Parameters:
    `s` - The file
  Returns:
    The file resolved

Copyright © 2000-2008 Apache Software Foundation. All Rights Reserved.