Package org.apache.jasper.servlet
Class JspServlet
- java.lang.Object
-
- javax.servlet.GenericServlet
-
- javax.servlet.http.HttpServlet
-
- org.apache.jasper.servlet.JspServlet
-
- All Implemented Interfaces:
java.io.Serializable
,javax.servlet.Servlet
,javax.servlet.ServletConfig
public class JspServlet extends javax.servlet.http.HttpServlet
The JSP engine (a.k.a Jasper). The servlet container is responsible for providing a URLClassLoader for the web application context Jasper is being used in. Jasper will try get the Tomcat ServletContext attribute for its ServletContext class loader, if that fails, it uses the parent class loader. In either case, it must be a URLClassLoader.- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description private static int
CHAR_LIMIT
private javax.servlet.ServletConfig
config
private javax.servlet.ServletContext
context
private java.util.concurrent.atomic.AtomicInteger
countErrors
private java.util.HashSet<java.lang.String>
httpMethodsSet
private java.lang.String
httpMethodsString
private JspProbeEmitter
jspProbeEmitter
private static java.util.logging.Logger
log
private Options
options
private JspRuntimeContext
rctxt
private java.util.concurrent.ConcurrentHashMap<java.lang.String,java.net.URL>
tagFileJarUrls
private java.util.concurrent.ConcurrentHashMap<java.lang.String,javax.servlet.jsp.tagext.TagLibraryInfo>
taglibs
-
Constructor Summary
Constructors Constructor Description JspServlet()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
destroy()
int
getJspCount()
Returns the number of JSPs for which JspServletWrappers exist, i.e., the number of JSPs that have been loaded into the webapp with which this JspServlet is associated.int
getJspErrorCount()
Gets the number of errors triggered by JSP invocations.int
getJspReloadCount()
Gets the number of JSPs that have been reloaded.private void
incrementErrorCount(java.lang.String jspUri)
void
init(javax.servlet.ServletConfig config)
(package private) boolean
preCompile(javax.servlet.http.HttpServletRequest request)
Look for a precompilation request as described in Section 8.4.2 of the JSP 1.2 Specification.void
service(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response)
private void
serviceJspFile(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response, java.lang.String jspUri, java.lang.Throwable exception, boolean precompile)
void
setJspReloadCount(int count)
Resets the JSP reload counter.-
Methods inherited from class javax.servlet.http.HttpServlet
doDelete, doGet, doHead, doOptions, doPost, doPut, doTrace, getLastModified, service
-
-
-
-
Field Detail
-
log
private static java.util.logging.Logger log
-
CHAR_LIMIT
private static final int CHAR_LIMIT
- See Also:
- Constant Field Values
-
context
private javax.servlet.ServletContext context
-
config
private javax.servlet.ServletConfig config
-
options
private Options options
-
rctxt
private JspRuntimeContext rctxt
-
countErrors
private java.util.concurrent.atomic.AtomicInteger countErrors
-
httpMethodsString
private java.lang.String httpMethodsString
-
httpMethodsSet
private java.util.HashSet<java.lang.String> httpMethodsSet
-
taglibs
private java.util.concurrent.ConcurrentHashMap<java.lang.String,javax.servlet.jsp.tagext.TagLibraryInfo> taglibs
-
tagFileJarUrls
private java.util.concurrent.ConcurrentHashMap<java.lang.String,java.net.URL> tagFileJarUrls
-
jspProbeEmitter
private JspProbeEmitter jspProbeEmitter
-
-
Method Detail
-
init
public void init(javax.servlet.ServletConfig config) throws javax.servlet.ServletException
- Specified by:
init
in interfacejavax.servlet.Servlet
- Overrides:
init
in classjavax.servlet.GenericServlet
- Throws:
javax.servlet.ServletException
-
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 with which this JspServlet is associated.This info may be used for monitoring purposes.
- Returns:
- The number of JSPs that have been loaded into the webapp with which this JspServlet is associated
-
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 number of JSPs that have been reloaded.This info may be used for monitoring purposes.
- Returns:
- The number of JSPs (in the webapp with which this JspServlet is associated) that have been reloaded
-
getJspErrorCount
public int getJspErrorCount()
Gets the number of errors triggered by JSP invocations.- Returns:
- The number of errors triggered by JSP invocations
-
preCompile
boolean preCompile(javax.servlet.http.HttpServletRequest request) throws javax.servlet.ServletException
Look for a precompilation request as described in Section 8.4.2 of the JSP 1.2 Specification. WARNING - we cannot use
request.getParameter()
for this, because that will trigger parsing all of the request parameters, and not give a servlet the opportunity to callrequest.setCharacterEncoding()
first.- Parameters:
request
- The servlet requset we are processing- Throws:
javax.servlet.ServletException
- if an invalid parameter value for thejsp_precompile
parameter name is specified
-
service
public void service(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response) throws javax.servlet.ServletException, java.io.IOException
- Overrides:
service
in classjavax.servlet.http.HttpServlet
- Throws:
javax.servlet.ServletException
java.io.IOException
-
destroy
public void destroy()
- Specified by:
destroy
in interfacejavax.servlet.Servlet
- Overrides:
destroy
in classjavax.servlet.GenericServlet
-
serviceJspFile
private void serviceJspFile(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response, java.lang.String jspUri, java.lang.Throwable exception, boolean precompile) throws javax.servlet.ServletException, java.io.IOException
- Throws:
javax.servlet.ServletException
java.io.IOException
-
incrementErrorCount
private void incrementErrorCount(java.lang.String jspUri)
-
-