Package org.apache.jasper

## Interface Options

- All Known Implementing Classes:
    `EmbeddedServletOptions`, `JspC`

      public interface Options

  A class to hold all init parameters specific to the JSP engine.
  Author:
    Anil K. Vijendran, Hans Bergsten, Pierre Delisle

- - ### Method Summary

    All Methods Instance Methods Abstract Methods Default Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `boolean` | `genStringAsCharArray()` | Indicates whether text strings are to be generated as char arrays.
    `Map<String,​TagLibraryInfo>` | `getCache()` | The web-application wide cache for the TagLibraryInfo tag library descriptors, used if `isCaching()` returns `true`.
    `int` | `getCheckInterval()` |
    `boolean` | `getClassDebugInfo()` |
    `String` | `getClassPath()` |
    `String` | `getCompiler()` | Compiler to use.
    `String` | `getCompilerClassName()` |
    `String` | `getCompilerSourceVM()` |
    `String` | `getCompilerTargetVM()` |
    `boolean` | `getDevelopment()` | Main development flag, which enables detailed error reports with sources, as well automatic recompilation of JSPs and tag files.
    `boolean` | `getDisplaySourceFragment()` |
    `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.
    `boolean` | `getFork()` | The boolean flag to tell Ant whether to fork JSP page compilations.
    `default boolean` | `getGeneratedJavaAddTimestamp()` | Should the container include the time the file was generated in the comments at the start of a Java file generated from a JSP or tag.
    `default String` | `getGeneratedJspPackageName()` |
    `default String` | `getGeneratedTagFilePackageName()` |
    `String` | `getJavaEncoding()` |
    `JspConfig` | `getJspConfig()` |
    `int` | `getJspIdleTimeout()` |
    `default String` | `getJspPrecompilationQueryParameter()` |
    `default String` | `getJspServletBase()` |
    `boolean` | `getKeepGenerated()` |
    `boolean` | `getMappedFile()` |
    `int` | `getMaxLoadedJsps()` | The maximum number of loaded jsps per web-application.
    `int` | `getModificationTestInterval()` |
    `default boolean` | `getPoolTagsWithExtends()` |
    `boolean` | `getQuoteAttributeEL()` |
    `boolean` | `getRecompileOnFail()` |
    `File` | `getScratchDir()` |
    `default String` | `getServiceMethodName()` | _jspService is the name of the method that is called by HttpJspBase.service().
    `default String` | `getServletClasspathAttribute()` |
    `default boolean` | `getStrictGetProperty()` |
    `boolean` | `getStrictQuoteEscaping()` |
    `default boolean` | `getStrictWhitespace()` |
    `TagPluginManager` | `getTagPluginManager()` |
    `default String` | `getTempVariableNamePrefix()` |
    `TldCache` | `getTldCache()` | The cache that maps URIs, resource paths and parsed TLD files for the various tag libraries 'exposed' by the web application.
    `TrimSpacesOption` | `getTrimSpaces()` |
    `default boolean` | `getUseInstanceManagerForTags()` |
    `default String` | `getVariableForExpressionFactory()` |
    `default String` | `getVariableForInstanceManager()` |
    `boolean` | `isCaching()` |
    `boolean` | `isPoolingEnabled()` |
    `boolean` | `isSmapDumped()` | This setting is ignored if suppressSmap() is `true`.
    `boolean` | `isSmapSuppressed()` |
    `boolean` | `isXpoweredBy()` |

- - ### Method Detail

    - #### getErrorOnUseBeanInvalidClassAttribute

          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.
      Returns:
        `true` to get an error

    - #### getKeepGenerated

          boolean getKeepGenerated()

      Returns:
        `true` to keep the generated source

    - #### isPoolingEnabled

          boolean isPoolingEnabled()

      Returns:
        `true` if tag handler pooling is enabled, `false` otherwise.

    - #### getMappedFile

          boolean getMappedFile()

      Returns:
        `true` if HTML mapped Servlets are supported.

    - #### getClassDebugInfo

          boolean getClassDebugInfo()

      Returns:
        `true` if debug information in included in compiled classes.

    - #### getCheckInterval

          int getCheckInterval()

      Returns:
        background compile thread check interval in seconds

    - #### getDevelopment

          boolean getDevelopment()

      Main development flag, which enables detailed error reports with sources, as well automatic recompilation of JSPs and tag files. This setting should usually be `false` when running in production.
      Returns:
        `true` if Jasper is in development mode

    - #### getDisplaySourceFragment

          boolean getDisplaySourceFragment()

      Returns:
        `true` to include a source fragment in exception messages.

    - #### isSmapSuppressed

          boolean isSmapSuppressed()

      Returns:
        `true` to suppress generation of SMAP info for JSR45 debugging.

    - #### isSmapDumped

          boolean isSmapDumped()

      This setting is ignored if suppressSmap() is `true`.
      Returns:
        `true` to write SMAP info for JSR45 debugging to a file.

    - #### getTrimSpaces

          TrimSpacesOption getTrimSpaces()

      Returns:
        `TrimSpacesOption.TRUE` to remove template text that consists only of whitespace from the output completely, `TrimSpacesOption.SINGLE` to replace such template text with a single space, `TrimSpacesOption.FALSE` to leave such template text unchanged or `TrimSpacesOption.EXTENDED` to remove template text that consists only of whitespace and to replace any sequence of whitespace and new lines within template text with a single new line.

    - #### getScratchDir

          File getScratchDir()

      Returns:
        the work folder

    - #### getClassPath

          String getClassPath()

      Returns:
        the classpath used to compile generated Servlets

    - #### getCompiler

          String getCompiler()

      Compiler to use.

      If `null` (the default), the java compiler from Eclipse JDT project, bundled with Tomcat, will be used. Otherwise, the `javac` task from Apache Ant will be used to call an external java compiler and the value of this option will be passed to it. See Apache Ant documentation for the possible values.

      Returns:
        the compiler name

    - #### getCompilerTargetVM

          String getCompilerTargetVM()

      Returns:
        the compiler target VM, e.g. 1.8.

    - #### getCompilerSourceVM

          String getCompilerSourceVM()

      Returns:
        the compiler source VM, e.g. 1.8.

    - #### getCompilerClassName

          String getCompilerClassName()

      Returns:
        Jasper Java compiler class to use.

    - #### getTldCache

          TldCache getTldCache()

      The cache that maps URIs, resource paths and parsed TLD files for the various tag libraries 'exposed' by the web application. A tag library is 'exposed' either explicitly in web.xml or implicitly via the uri tag in the TLD of a taglib deployed in a jar file (WEB-INF/lib).
      Returns:
        the instance of the TldLocationsCache for the web-application.

    - #### getJavaEncoding

          String getJavaEncoding()

      Returns:
        Java platform encoding to generate the JSP page servlet.

    - #### getFork

          boolean getFork()

      The boolean flag to tell Ant whether to fork JSP page compilations.

      Is used only when Jasper uses an external java compiler (wrapped through a `javac` Apache Ant task).

      Returns:
        `true` to fork a process during compilation

    - #### getJspConfig

          JspConfig getJspConfig()

      Returns:
        JSP configuration information specified in web.xml.

    - #### isXpoweredBy

          boolean isXpoweredBy()

      Returns:
        `true` to generate a X-Powered-By response header.

    - #### getTagPluginManager

          TagPluginManager getTagPluginManager()

      Returns:
        a Tag Plugin Manager

    - #### genStringAsCharArray

          boolean genStringAsCharArray()

      Indicates whether text strings are to be generated as char arrays.
      Returns:
        `true` if text strings are to be generated as char arrays, `false` otherwise

    - #### getModificationTestInterval

          int getModificationTestInterval()

      Returns:
        modification test interval.

    - #### getRecompileOnFail

          boolean getRecompileOnFail()

      Returns:
        `true` if re-compile will occur on a failure.

    - #### isCaching

          boolean isCaching()

      Returns:
        `true` is caching is enabled (used for precompilation).

    - #### getCache

          Map<String,​TagLibraryInfo> getCache()

      The web-application wide cache for the TagLibraryInfo tag library descriptors, used if `isCaching()` returns `true`.

      Using this cache avoids the cost of repeating the parsing of a tag library descriptor XML file (performed by TagLibraryInfoImpl.parseTLD).

      Returns:
        the Map(String uri, TagLibraryInfo tld) instance.

    - #### getMaxLoadedJsps

          int getMaxLoadedJsps()

      The maximum number of loaded jsps per web-application. If there are more jsps loaded, they will be unloaded. If unset or less than 0, no jsps are unloaded.
      Returns:
        The JSP count

    - #### getJspIdleTimeout

          int getJspIdleTimeout()

      Returns:
        the idle time in seconds after which a JSP is unloaded. If unset or less or equal than 0, no jsps are unloaded.

    - #### getStrictQuoteEscaping

          boolean getStrictQuoteEscaping()

      Returns:
        `true` if the quote escaping required by section JSP.1.6 of the JSP specification should be applied to scriplet expression.

    - #### getQuoteAttributeEL

          boolean getQuoteAttributeEL()

      Returns:
        `true` if EL expressions used within attributes should have the quoting rules in JSP.1.6 applied to the expression.

    - #### getVariableForExpressionFactory

          default String getVariableForExpressionFactory()

      Returns:
        the name of the variable that will be used in the generated JSP code for the expression factory

    - #### getVariableForInstanceManager

          default String getVariableForInstanceManager()

      Returns:
        the name of the variable that will be used in the generated JSP code for the instance manager

    - #### getPoolTagsWithExtends

          default boolean getPoolTagsWithExtends()

      Returns:
        `true` if tag pooling is disabled with page that uses extends.

    - #### getStrictGetProperty

          default boolean getStrictGetProperty()

      Returns:
        `true` if the requirement to have the object used in jsp:getProperty action to be previously "introduced" to the JSP processor (see JSP.5.3) is enforced.

    - #### getStrictWhitespace

          default boolean getStrictWhitespace()

      Returns:
        `true` if the strict white space rules are applied.

    - #### getJspServletBase

          default String getJspServletBase()

      Returns:
        the default base class for generated JSP Servlets

    - #### getServiceMethodName

          default String getServiceMethodName()

      _jspService is the name of the method that is called by HttpJspBase.service(). This is where most of the code generated from JSPs go.
      Returns:
        the method name

    - #### getServletClasspathAttribute

          default String getServletClasspathAttribute()

      Returns:
        ServletContext attribute for classpath. This is tomcat specific. Other servlet engines may choose to support this attribute if they want to have this JSP engine running on them.

    - #### getJspPrecompilationQueryParameter

          default String getJspPrecompilationQueryParameter()

      Returns:
        The query parameter that causes the JSP engine to just pregenerated the servlet but not invoke it.

    - #### getGeneratedJspPackageName

          default String getGeneratedJspPackageName()

      Returns:
        The default package name for compiled jsp pages.

    - #### getGeneratedTagFilePackageName

          default String getGeneratedTagFilePackageName()

      Returns:
        The default package name for tag handlers generated from tag files.

    - #### getTempVariableNamePrefix

          default String getTempVariableNamePrefix()

      Returns:
        Prefix to use for generated temporary variable names

    - #### getUseInstanceManagerForTags

          default boolean getUseInstanceManagerForTags()

      Returns:
        `true` if the container instance manager will be used to create the bean instances

    - #### getGeneratedJavaAddTimestamp

          default boolean getGeneratedJavaAddTimestamp()

      Should the container include the time the file was generated in the comments at the start of a Java file generated from a JSP or tag. Defaults to `true`.
      Returns:
        `true` to include the timestamp, otherwise don't include it