org.apache.struts2.jasper

## Class JspC

- java.lang.Object
- - org.apache.struts2.jasper.JspC

- All Implemented Interfaces:
    Options

      public class JspC
      extends 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.struts2.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

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `protected boolean` | `addWebXmlMappings`
    `protected static int` | `ALL_WEBXML`
    `protected int` | `argPos`
    `protected String[]` | `args`
    `protected Map` | `cache`
    `protected boolean` | `caching`
    `protected boolean` | `classDebugInfo`
    `protected String` | `classPath`
    `protected boolean` | `compile`
    `protected String` | `compiler`
    `protected String` | `compilerSourceVM`
    `protected String` | `compilerTargetVM`
    `protected JspCServletContext` | `context` The servlet context.
    `protected static int` | `DEFAULT_DIE_LEVEL`
    `static String` | `DEFAULT_IE_CLASS_ID`
    `protected static int` | `die`
    `protected int` | `dieLevel`
    `protected boolean` | `errorOnUseBeanInvalidClassAttribute` Needs better documentation, this data member does.
    `protected 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 String` | `ieClassId`
    `protected static int` | `INC_WEBXML`
    `protected static String[]` | `insertBefore`
    `protected String` | `javaEncoding` The java file encoding.
    `protected JspConfig` | `jspConfig`
    `protected static String` | `LIST_ERRORS`
    `protected boolean` | `listErrors`
    `protected URLClassLoader` | `loader`
    `protected static org.apache.juli.logging.Log` | `log`
    `protected Writer` | `mapout`
    `protected boolean` | `mappedFile`
    `protected CharArrayWriter` | `mappingout`
    `protected static int` | `NO_DIE_LEVEL`
    `protected List` | `pages` The pages.
    `protected boolean` | `poolingEnabled`
    `protected JspRuntimeContext` | `rctxt` The runtime context.
    `protected File` | `scratchDir`
    `protected CharArrayWriter` | `servletout`
    `protected static String` | `SHOW_SUCCESS`
    `protected boolean` | `showSuccess`
    `protected boolean` | `smapDumped`
    `protected boolean` | `smapSuppressed`
    `protected static String` | `SWITCH_CACHE`
    `protected static String` | `SWITCH_CLASS_NAME`
    `protected static String` | `SWITCH_CLASSPATH`
    `protected static String` | `SWITCH_COMPILE`
    `protected static String` | `SWITCH_DIE`
    `protected static String` | `SWITCH_DUMP_SMAP`
    `protected static String` | `SWITCH_ENCODING`
    `protected static String` | `SWITCH_FILE_WEBAPP`
    `protected static String` | `SWITCH_FULL_STOP`
    `protected static String` | `SWITCH_HELP`
    `protected static String` | `SWITCH_MAPPED`
    `protected static String` | `SWITCH_OUTPUT_DIR`
    `protected static String` | `SWITCH_PACKAGE_NAME`
    `protected static String` | `SWITCH_POOLING`
    `protected static String` | `SWITCH_SMAP`
    `protected static String` | `SWITCH_SOURCE`
    `protected static String` | `SWITCH_TARGET`
    `protected static String` | `SWITCH_TRIM_SPACES`
    `protected static String` | `SWITCH_URI_BASE`
    `protected static String` | `SWITCH_URI_ROOT`
    `protected static String` | `SWITCH_VERBOSE`
    `protected static String` | `SWITCH_WEBAPP_INC`
    `protected static String` | `SWITCH_WEBAPP_XML`
    `protected static String` | `SWITCH_XPOWERED_BY`
    `protected TagPluginManager` | `tagPluginManager`
    `protected String` | `targetClassName`
    `protected String` | `targetPackage`
    `protected TldLocationsCache` | `tldLocationsCache` Cache for the TLD locations
    `protected boolean` | `trimSpaces`
    `protected String` | `uriBase`
    `protected String` | `uriRoot`
    `protected boolean` | `verbose`
    `protected String` | `webxmlFile`
    `protected int` | `webxmlLevel`
    `protected boolean` | `xpoweredBy`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `JspC()`

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `protected void` | `addExtension(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(String file, JspCompilationContext clctxt)`
    `boolean` | `genStringAsCharArray()` Indicates whether text strings are to be generated as char arrays.
    `Map` | `getCache()` The web-application wide cache for the returned TreeNode by parseXMLDocument in TagLibraryInfoImpl.parseTLD, if isCaching returns true.
    `int` | `getCheckInterval()`
    `boolean` | `getClassDebugInfo()`
    `String` | `getClassPath()`
    `String` | `getCompiler()`
    `String` | `getCompilerClassName()`
    `String` | `getCompilerSourceVM()`
    `String` | `getCompilerTargetVM()`
    `boolean` | `getDevelopment()`
    `boolean` | `getDisplaySourceFragment()`
    `boolean` | `getErrorOnUseBeanInvalidClassAttribute()`
    `List` | `getExtensions()` Returns the list of file extensions that are treated as JSP files.
    `boolean` | `getFailOnError()`
    `boolean` | `getFork()`
    `String` | `getIeClassId()` Gets the class-id value that is sent to Internet Explorer when using <jsp:plugin> tags.
    `String` | `getJavaEncoding()` Returns the encoding to use for java files.
    `String` | `getJspCompilerPath()`
    `Class` | `getJspCompilerPlugin()`
    `JspConfig` | `getJspConfig()`
    `boolean` | `getKeepGenerated()`
    `boolean` | `getMappedFile()` Are we supporting HTML mapped servlets?
    `int` | `getModificationTestInterval()`
    `Object` | `getProtectionDomain()`
    `File` | `getScratchDir()`
    `String` | `getSourceCode()`
    `TagPluginManager` | `getTagPluginManager()`
    `int` | `getTagPoolSize()`
    `Set<String>` | `getTldAbsolutePaths()`
    `TldLocationsCache` | `getTldLocationsCache()` The cache for the location of the TLD's for the various tag libraries 'exposed' by the web application.
    `boolean` | `getTrimSpaces()`
    `protected void` | `initServletContext()`
    `protected void` | `initWebXml()`
    `boolean` | `isCaching()`
    `boolean` | `isPoolingEnabled()`
    `boolean` | `isSmapDumped()`
    `boolean` | `isSmapSuppressed()`
    `boolean` | `isXpoweredBy()`
    `protected void` | `locateUriRoot(File f)` Find the WEB-INF dir by looking up in the directory tree.
    `static void` | `main(String[] arg)`
    `protected void` | `mergeIntoWebXml()` Include the generated web.xml inside the webapp's web.xml.
    `protected String` | `nextArg()`
    `protected String` | `nextFile()`
    `void` | `scanFiles(File base)` Locate all jsp files in the webapp.
    `void` | `setAddWebXmlMappings(boolean b)`
    `void` | `setArgs(String[] arg)`
    `void` | `setCaching(boolean caching)`
    `void` | `setClassDebugInfo(boolean b)`
    `void` | `setClassLoaderInterface(ClassLoaderInterface classLoaderInterface)`
    `void` | `setClassName(String p)`
    `void` | `setClassPath(String s)`
    `void` | `setCompile(boolean b)` Sets the compile flag.
    `void` | `setCompiler(String c)`
    `void` | `setCompilerSourceVM(String vm)`
    `void` | `setCompilerTargetVM(String vm)`
    `void` | `setErrorOnUseBeanInvalidClassAttribute(boolean b)`
    `void` | `setFailOnError(boolean b)`
    `void` | `setGenStringAsCharArray(boolean genStringAsCharArray)` Determines whether text strings are to be generated as char arrays, which improves performance in some cases.
    `void` | `setIeClassId(String ieClassId)` Sets the class-id value to be sent to Internet Explorer when using <jsp:plugin> tags.
    `void` | `setJavaEncoding(String encodingName)` Sets the encoding to use for java files.
    `void` | `setJspFiles(String jspFiles)` Parses comma-separated list of JSP files to be processed.
    `void` | `setListErrors(boolean b)`
    `void` | `setPackage(String p)`
    `void` | `setPoolingEnabled(boolean poolingEnabled)`
    `void` | `setSmapDumped(boolean smapDumped)`
    `void` | `setSmapSuppressed(boolean smapSuppressed)`
    `void` | `setTrimSpaces(boolean ts)`
    `void` | `setValidateXml(boolean b)`
    `void` | `setVerbose(int level)` Sets the verbosity level.
    `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 String DEFAULT_IE_CLASS_ID

      See Also:
        Constant Field Values

    - #### log

          protected static org.apache.juli.logging.Log log

    - #### SWITCH_VERBOSE

          protected static final String SWITCH_VERBOSE

      See Also:
        Constant Field Values

    - #### SWITCH_HELP

          protected static final String SWITCH_HELP

      See Also:
        Constant Field Values

    - #### SWITCH_OUTPUT_DIR

          protected static final String SWITCH_OUTPUT_DIR

      See Also:
        Constant Field Values

    - #### SWITCH_PACKAGE_NAME

          protected static final String SWITCH_PACKAGE_NAME

      See Also:
        Constant Field Values

    - #### SWITCH_CACHE

          protected static final String SWITCH_CACHE

      See Also:
        Constant Field Values

    - #### SWITCH_CLASS_NAME

          protected static final String SWITCH_CLASS_NAME

      See Also:
        Constant Field Values

    - #### SWITCH_FULL_STOP

          protected static final String SWITCH_FULL_STOP

      See Also:
        Constant Field Values

    - #### SWITCH_COMPILE

          protected static final String SWITCH_COMPILE

      See Also:
        Constant Field Values

    - #### SWITCH_SOURCE

          protected static final String SWITCH_SOURCE

      See Also:
        Constant Field Values

    - #### SWITCH_TARGET

          protected static final String SWITCH_TARGET

      See Also:
        Constant Field Values

    - #### SWITCH_URI_BASE

          protected static final String SWITCH_URI_BASE

      See Also:
        Constant Field Values

    - #### SWITCH_URI_ROOT

          protected static final String SWITCH_URI_ROOT

      See Also:
        Constant Field Values

    - #### SWITCH_FILE_WEBAPP

          protected static final String SWITCH_FILE_WEBAPP

      See Also:
        Constant Field Values

    - #### SWITCH_WEBAPP_INC

          protected static final String SWITCH_WEBAPP_INC

      See Also:
        Constant Field Values

    - #### SWITCH_WEBAPP_XML

          protected static final String SWITCH_WEBAPP_XML

      See Also:
        Constant Field Values

    - #### SWITCH_MAPPED

          protected static final String SWITCH_MAPPED

      See Also:
        Constant Field Values

    - #### SWITCH_XPOWERED_BY

          protected static final String SWITCH_XPOWERED_BY

      See Also:
        Constant Field Values

    - #### SWITCH_TRIM_SPACES

          protected static final String SWITCH_TRIM_SPACES

      See Also:
        Constant Field Values

    - #### SWITCH_CLASSPATH

          protected static final String SWITCH_CLASSPATH

      See Also:
        Constant Field Values

    - #### SWITCH_DIE

          protected static final String SWITCH_DIE

      See Also:
        Constant Field Values

    - #### SWITCH_POOLING

          protected static final String SWITCH_POOLING

      See Also:
        Constant Field Values

    - #### SWITCH_ENCODING

          protected static final String SWITCH_ENCODING

      See Also:
        Constant Field Values

    - #### SWITCH_SMAP

          protected static final String SWITCH_SMAP

      See Also:
        Constant Field Values

    - #### SWITCH_DUMP_SMAP

          protected static final String SWITCH_DUMP_SMAP

      See Also:
        Constant Field Values

    - #### SHOW_SUCCESS

          protected static final String SHOW_SUCCESS

      See Also:
        Constant Field Values

    - #### LIST_ERRORS

          protected static final 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 String[] insertBefore

    - #### die

          protected static int die

    - #### classPath

          protected String classPath

    - #### loader

          protected URLClassLoader loader

    - #### trimSpaces

          protected boolean trimSpaces

    - #### genStringAsCharArray

          protected boolean genStringAsCharArray

    - #### xpoweredBy

          protected boolean xpoweredBy

    - #### mappedFile

          protected boolean mappedFile

    - #### poolingEnabled

          protected boolean poolingEnabled

    - #### scratchDir

          protected File scratchDir

    - #### ieClassId

          protected String ieClassId

    - #### targetPackage

          protected String targetPackage

    - #### targetClassName

          protected String targetClassName

    - #### uriBase

          protected String uriBase

    - #### uriRoot

          protected String uriRoot

    - #### 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 Map cache

    - #### compiler

          protected String compiler

    - #### compilerTargetVM

          protected String compilerTargetVM

    - #### compilerSourceVM

          protected 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 List extensions

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

    - #### pages

          protected List pages

      The pages.

    - #### errorOnUseBeanInvalidClassAttribute

          protected boolean errorOnUseBeanInvalidClassAttribute

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

    - #### javaEncoding

          protected String javaEncoding

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

    - #### webxmlFile

          protected String webxmlFile

    - #### webxmlLevel

          protected int webxmlLevel

    - #### addWebXmlMappings

          protected boolean addWebXmlMappings

    - #### mapout

          protected Writer mapout

    - #### servletout

          protected CharArrayWriter servletout

    - #### mappingout

          protected 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 String[] args

  - ### Constructor Detail

    - #### JspC

          public JspC()

  - ### Method Detail

    - #### main

          public static void main(String[] arg)

    - #### setArgs

          public void setArgs(String[] arg)
                       throws JasperException

      Throws:
        `JasperException`

    - #### getSourceCode

          public String getSourceCode()

    - #### setClassLoaderInterface

          public void setClassLoaderInterface(ClassLoaderInterface classLoaderInterface)

    - #### getTldAbsolutePaths

          public Set<String> getTldAbsolutePaths()

    - #### getKeepGenerated

          public boolean getKeepGenerated()

      Specified by:
        `getKeepGenerated` in interface `Options`
      Returns:
        Are we keeping generated code around?

    - #### getTrimSpaces

          public boolean getTrimSpaces()

      Specified by:
        `getTrimSpaces` in interface `Options`
      Returns:
        Should white spaces between directives or actions be trimmed?

    - #### setTrimSpaces

          public void setTrimSpaces(boolean ts)

    - #### isPoolingEnabled

          public boolean isPoolingEnabled()

      Specified by:
        `isPoolingEnabled` in interface `Options`
      Returns:
        true if tag handler pooling is enabled, false otherwise.

    - #### setPoolingEnabled

          public void setPoolingEnabled(boolean poolingEnabled)

    - #### isXpoweredBy

          public boolean isXpoweredBy()

      Specified by:
        `isXpoweredBy` in interface `Options`
      Returns:
        Is generation of X-Powered-By response header enabled/disabled?

    - #### setXpoweredBy

          public void setXpoweredBy(boolean xpoweredBy)

    - #### getDisplaySourceFragment

          public boolean getDisplaySourceFragment()

      Specified by:
        `getDisplaySourceFragment` in interface `Options`
      Returns:
        Should we include a source fragment in exception messages, which could be displayed to the developer ?

    - #### getErrorOnUseBeanInvalidClassAttribute

          public boolean getErrorOnUseBeanInvalidClassAttribute()

      Specified by:
        `getErrorOnUseBeanInvalidClassAttribute` in 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.

    - #### 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`
      Returns:
        Are we supporting HTML mapped servlets?

    - #### getProtectionDomain

          public Object getProtectionDomain()

    - #### setClassDebugInfo

          public void setClassDebugInfo(boolean b)

    - #### getClassDebugInfo

          public boolean getClassDebugInfo()

      Specified by:
        `getClassDebugInfo` in interface `Options`
      Returns:
        Should we include debug information in compiled class?

    - #### isCaching

          public boolean isCaching()

      Specified by:
        `isCaching` in interface `Options`
      Returns:
        Is caching enabled (used for precompilation).

    - #### setCaching

          public void setCaching(boolean caching)

    - #### getCache

          public 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.

    - #### getCheckInterval

          public int getCheckInterval()

      Specified by:
        `getCheckInterval` in interface `Options`
      Returns:
        Background compilation check intervals in seconds

    - #### getModificationTestInterval

          public int getModificationTestInterval()

      Specified by:
        `getModificationTestInterval` in interface `Options`
      Returns:
        Modification test interval.

    - #### getDevelopment

          public boolean getDevelopment()

      Specified by:
        `getDevelopment` in interface `Options`
      Returns:
        Is Jasper being used in development mode?

    - #### isSmapSuppressed

          public boolean isSmapSuppressed()

      Specified by:
        `isSmapSuppressed` in interface `Options`
      Returns:
        Is the generation of SMAP info for JSR45 debuggin suppressed?

    - #### setSmapSuppressed

          public void setSmapSuppressed(boolean smapSuppressed)

      Parameters:
        `smapSuppressed` - Set smapSuppressed flag.

    - #### isSmapDumped

          public boolean isSmapDumped()

      Specified by:
        `isSmapDumped` in interface `Options`
      Returns:
        Should SMAP info for JSR45 debugging be dumped to a file?

    - #### setSmapDumped

          public void setSmapDumped(boolean smapDumped)

      Parameters:
        `smapDumped` - Set smapDumped 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(String ieClassId)

      Sets the class-id value to be sent to Internet Explorer when using <jsp:plugin> tags.
      Parameters:
        `ieClassId` - Class-id value

    - #### getIeClassId

          public String getIeClassId()

      Gets the class-id value that is sent to Internet Explorer when using <jsp:plugin> tags.
      Specified by:
        `getIeClassId` in interface `Options`
      Returns:
        Class-id value

    - #### getScratchDir

          public File getScratchDir()

      Specified by:
        `getScratchDir` in interface `Options`
      Returns:
        What is my scratch dir?

    - #### getJspCompilerPlugin

          public Class getJspCompilerPlugin()

    - #### getJspCompilerPath

          public String getJspCompilerPath()

    - #### getCompiler

          public String getCompiler()

      Specified by:
        `getCompiler` in interface `Options`
      Returns:
        Compiler to use.

    - #### setCompiler

          public void setCompiler(String c)

    - #### getCompilerClassName

          public String getCompilerClassName()

      Specified by:
        `getCompilerClassName` in interface `Options`
      Returns:
        Compiler class name to use.

    - #### getCompilerTargetVM

          public String getCompilerTargetVM()

      Specified by:
        `getCompilerTargetVM` in interface `Options`
      Returns:
        The compiler target VM, e.g. 1.1, 1.2, 1.3, 1.4, or 1.5.

    - #### setCompilerTargetVM

          public void setCompilerTargetVM(String vm)

    - #### getCompilerSourceVM

          public String getCompilerSourceVM()

      Specified by:
        `getCompilerSourceVM` in interface `Options`
      Returns:
        Compiler source VM, e.g. 1.3, 1.4, or 1.5.

    - #### setCompilerSourceVM

          public void setCompilerSourceVM(String vm)

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

      Sets the encoding to use for java files.
      Parameters:
        `encodingName` - The name, e.g. "UTF-8"

    - #### getFork

          public boolean getFork()

      Specified by:
        `getFork` in interface `Options`
      Returns:
        boolean flag to tell Ant whether to fork JSP page compilations.

    - #### getClassPath

          public String getClassPath()

      Specified by:
        `getClassPath` in interface `Options`
      Returns:
        What classpath should I use while compiling the servlets generated from JSP files?

    - #### setClassPath

          public void setClassPath(String s)

    - #### getExtensions

          public List getExtensions()

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

    - #### addExtension

          protected void addExtension(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"

    - #### setJspFiles

          public void setJspFiles(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)

    - #### setPackage

          public void setPackage(String p)

    - #### setClassName

          public void setClassName(String p)

      Parameters:
        `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 ?

    - #### setAddWebXmlMappings

          public void setAddWebXmlMappings(boolean b)

    - #### setFailOnError

          public void setFailOnError(boolean b)

      Parameters:
        `b` - Set the option that throws an exception in case of a compilation error.

    - #### getFailOnError

          public boolean getFailOnError()

    - #### getJspConfig

          public JspConfig getJspConfig()

      Specified by:
        `getJspConfig` in interface `Options`
      Returns:
        Obtain JSP configuration information specified in web.xml.

    - #### getTagPluginManager

          public TagPluginManager getTagPluginManager()

      Specified by:
        `getTagPluginManager` in interface `Options`
      Returns:
        Obtain a Tag Plugin Manager

    - #### generateWebMapping

          public void generateWebMapping(String file,
                                         JspCompilationContext clctxt)
                                  throws IOException

      Throws:
        `IOException`

    - #### mergeIntoWebXml

          protected void mergeIntoWebXml()
                                  throws IOException

      Include the generated web.xml inside the webapp's web.xml.
      Throws:
        `IOException` - in case of IO errors

    - #### scanFiles

          public void scanFiles(File base)
                         throws JasperException

      Locate all jsp files in the webapp. Used if no explicit jsps are specified.
      Parameters:
        `base` - base
      Throws:
        `JasperException` - in case of Jasper errors

    - #### execute

          public void execute()
                       throws JasperException

      Executes the compilation.
      Throws:
        `JasperException` - If an error occurs

    - #### nextArg

          protected String nextArg()

    - #### nextFile

          protected String nextFile()

    - #### initWebXml

          protected void initWebXml()

    - #### completeWebXml

          protected void completeWebXml()

    - #### initServletContext

          protected void initServletContext()

    - #### locateUriRoot

          protected void locateUriRoot(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.
      Parameters:
        `f` - start file for lookup

Copyright © 2000–2026 Apache Software Foundation. All rights reserved.