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:
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:
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate static final int
private javax.servlet.ServletConfig
private javax.servlet.ServletContext
private AtomicInteger
private String
private JspProbeEmitter
private static Logger
private Options
private JspRuntimeContext
private ConcurrentHashMap
<String, URL> private ConcurrentHashMap
<String, javax.servlet.jsp.tagext.TagLibraryInfo> -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoid
destroy()
int
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
Gets the number of errors triggered by JSP invocations.int
Gets the number of JSPs that have been reloaded.private void
incrementErrorCount
(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, String jspUri, 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
Methods inherited from class javax.servlet.GenericServlet
getInitParameter, getInitParameterNames, getServletConfig, getServletContext, getServletInfo, getServletName, init, log, log
-
Field Details
-
log
-
CHAR_LIMIT
private static final int CHAR_LIMIT- See Also:
-
context
private javax.servlet.ServletContext context -
config
private javax.servlet.ServletConfig config -
options
-
rctxt
-
countErrors
-
httpMethodsString
-
httpMethodsSet
-
taglibs
-
tagFileJarUrls
-
jspProbeEmitter
-
-
Constructor Details
-
JspServlet
public JspServlet()
-
-
Method Details
-
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, IOException - Overrides:
service
in classjavax.servlet.http.HttpServlet
- Throws:
javax.servlet.ServletException
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, String jspUri, Throwable exception, boolean precompile) throws javax.servlet.ServletException, IOException - Throws:
javax.servlet.ServletException
IOException
-
incrementErrorCount
-