org.apache.struts2.jasper.compiler

## Class JspRuntimeContext

- java.lang.Object
- - org.apache.struts2.jasper.compiler.JspRuntimeContext

-     public final class JspRuntimeContext
      extends Object

  Class for tracking JSP compile time file dependencies when the <%@include file="..."%> directive is used.

  A background thread periodically checks the files a JSP page is dependent upon. If a dependent file changes the JSP page which included it is recompiled.

  Only used if a web application context is a directory.

  Version:
    $Revision: 505593 $
  Author:
    Glenn L. Nielsen

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `JspRuntimeContext(javax.servlet.ServletContext context, Options options)` Create a JspRuntimeContext for a web application context.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `addWrapper(String jspUri, JspServletWrapper jsw)` Add a new JspServletWrapper.
    `void` | `checkCompile()` Method used by background thread to check the JSP dependencies registered with this class for JSP's.
    `void` | `destroy()` Process a "destroy" event for this web application context.
    `String` | `getClassPath()`
    `CodeSource` | `getCodeSource()` Get the SecurityManager Policy CodeSource for this web applicaiton context.
    `int` | `getJspCount()` Returns the number of JSPs for which JspServletWrappers exist, i.e., the number of JSPs that have been loaded into the webapp.
    `int` | `getJspReloadCount()` Gets the current value of the JSP reload counter.
    `ClassLoader` | `getParentClassLoader()` Get the parent URLClassLoader.
    `PermissionCollection` | `getPermissionCollection()` Get the SecurityManager PermissionCollection for this web application context.
    `JspServletWrapper` | `getWrapper(String jspUri)` Get an already existing JspServletWrapper.
    `void` | `incrementJspReloadCount()` Increments the JSP reload counter.
    `void` | `removeWrapper(String jspUri)` Remove a JspServletWrapper.
    `void` | `setJspReloadCount(int count)` Resets the JSP reload counter.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### JspRuntimeContext

          public JspRuntimeContext(javax.servlet.ServletContext context,
                                   Options options)

      Create a JspRuntimeContext for a web application context.

      Loads in any previously generated dependencies from file.

      Parameters:
        `context` - ServletContext for web application
        `options` - options

  - ### Method Detail

    - #### addWrapper

          public void addWrapper(String jspUri,
                                 JspServletWrapper jsw)

      Add a new JspServletWrapper.
      Parameters:
        `jspUri` - JSP URI
        `jsw` - Servlet wrapper for JSP

    - #### getWrapper

          public JspServletWrapper getWrapper(String jspUri)

      Get an already existing JspServletWrapper.
      Parameters:
        `jspUri` - JSP URI
      Returns:
        JspServletWrapper for JSP

    - #### removeWrapper

          public void removeWrapper(String jspUri)

      Remove a JspServletWrapper.
      Parameters:
        `jspUri` - JSP URI of JspServletWrapper to remove

    - #### getJspCount

          public int getJspCount()

      Returns the number of JSPs for which JspServletWrappers exist, i.e., the number of JSPs that have been loaded into the webapp.
      Returns:
        The number of JSPs that have been loaded into the webapp

    - #### getCodeSource

          public CodeSource getCodeSource()

      Get the SecurityManager Policy CodeSource for this web applicaiton context.
      Returns:
        CodeSource for JSP

    - #### getParentClassLoader

          public ClassLoader getParentClassLoader()

      Get the parent URLClassLoader.
      Returns:
        URLClassLoader parent

    - #### getPermissionCollection

          public PermissionCollection getPermissionCollection()

      Get the SecurityManager PermissionCollection for this web application context.
      Returns:
        PermissionCollection permissions

    - #### destroy

          public void destroy()

      Process a "destroy" event for this web application context.

    - #### incrementJspReloadCount

          public void incrementJspReloadCount()

      Increments the JSP reload counter.

    - #### setJspReloadCount

          public void setJspReloadCount(int count)

      Resets the JSP reload counter.
      Parameters:
        `count` - Value to which to reset the JSP reload counter

    - #### getJspReloadCount

          public int getJspReloadCount()

      Gets the current value of the JSP reload counter.
      Returns:
        The current value of the JSP reload counter

    - #### checkCompile

          public void checkCompile()

      Method used by background thread to check the JSP dependencies registered with this class for JSP's.

    - #### getClassPath

          public String getClassPath()

      Returns:
        The classpath that is passed off to the Java compiler.

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