public abstract class GenericServlet extends java.lang.Object implements Servlet, ServletConfig, java.io.Serializable
HttpServlet
instead.
GenericServlet
implements the Servlet
and ServletConfig
interfaces. GenericServlet
may be directly extended by a servlet, although it's more common to extend
a protocol-specific subclass such as HttpServlet
.
GenericServlet
makes writing servlets
easier. It provides simple versions of the lifecycle methods
init
and destroy
and of the methods
in the ServletConfig
interface. GenericServlet
also implements the log
method, declared in the
ServletContext
interface.
To write a generic servlet, you need only
override the abstract service
method.
Constructor and Description |
---|
GenericServlet()
Does nothing.
|
Modifier and Type | Method and Description |
---|---|
void |
destroy()
Called by the servlet container to indicate to a servlet that the
servlet is being taken out of service.
|
java.lang.String |
getInitParameter(java.lang.String name)
Returns a
String containing the value of the named
initialization parameter, or null if the parameter does
not exist. |
java.util.Enumeration<java.lang.String> |
getInitParameterNames()
Returns the names of the servlet's initialization parameters
as an
Enumeration of String objects,
or an empty Enumeration if the servlet has no
initialization parameters. |
ServletConfig |
getServletConfig()
Returns this servlet's
ServletConfig object. |
ServletContext |
getServletContext()
Returns a reference to the
ServletContext in which this servlet
is running. |
java.lang.String |
getServletInfo()
Returns information about the servlet, such as
author, version, and copyright.
|
java.lang.String |
getServletName()
Returns the name of this servlet instance.
|
void |
init()
A convenience method which can be overridden so that there's no need
to call
super.init(config) . |
void |
init(ServletConfig config)
Called by the servlet container to indicate to a servlet that the
servlet is being placed into service.
|
void |
log(java.lang.String msg)
Writes the specified message to a servlet log file, prepended by the
servlet's name.
|
void |
log(java.lang.String message,
java.lang.Throwable t)
Writes an explanatory message and a stack trace
for a given
Throwable exception
to the servlet log file, prepended by the servlet's name. |
abstract void |
service(ServletRequest req,
ServletResponse res)
Called by the servlet container to allow the servlet to respond to
a request.
|
public GenericServlet()
init
methods.public void destroy()
Servlet.destroy()
.public java.lang.String getInitParameter(java.lang.String name)
String
containing the value of the named
initialization parameter, or null
if the parameter does
not exist. See ServletConfig.getInitParameter(java.lang.String)
.
This method is supplied for convenience. It gets the
value of the named parameter from the servlet's
ServletConfig
object.
getInitParameter
in interface ServletConfig
name
- a String
specifying the name
of the initialization parameterString
containing the value
of the initialization parameterpublic java.util.Enumeration<java.lang.String> getInitParameterNames()
Enumeration
of String
objects,
or an empty Enumeration
if the servlet has no
initialization parameters. See ServletConfig.getInitParameterNames()
.
This method is supplied for convenience. It gets the
parameter names from the servlet's ServletConfig
object.
getInitParameterNames
in interface ServletConfig
String
objects containing the names of
the servlet's initialization parameterspublic ServletConfig getServletConfig()
ServletConfig
object.getServletConfig
in interface Servlet
ServletConfig
object
that initialized this servletServlet.init(javax.servlet.ServletConfig)
public ServletContext getServletContext()
ServletContext
in which this servlet
is running. See ServletConfig.getServletContext()
.
This method is supplied for convenience. It gets the
context from the servlet's ServletConfig
object.
getServletContext
in interface ServletConfig
ServletContext
object
passed to this servlet by the init
methodServletContext
public java.lang.String getServletInfo()
Servlet.getServletInfo()
.getServletInfo
in interface Servlet
public void init(ServletConfig config) throws ServletException
Servlet.init(javax.servlet.ServletConfig)
.
This implementation stores the ServletConfig
object it receives from the servlet container for later use.
When overriding this form of the method, call
super.init(config)
.
init
in interface Servlet
config
- the ServletConfig
object
that contains configuration
information for this servletServletException
- if an exception occurs that
interrupts the servlet's normal
operationUnavailableException
public void init() throws ServletException
super.init(config)
.
Instead of overriding init(ServletConfig)
, simply override
this method and it will be called by
GenericServlet.init(ServletConfig config)
.
The ServletConfig
object can still be retrieved via getServletConfig()
.
ServletException
- if an exception occurs that
interrupts the servlet's
normal operationpublic void log(java.lang.String msg)
ServletContext.log(String)
.msg
- a String
specifying
the message to be written to the log filepublic void log(java.lang.String message, java.lang.Throwable t)
Throwable
exception
to the servlet log file, prepended by the servlet's name.
See ServletContext.log(String, Throwable)
.message
- a String
that describes
the error or exceptiont
- the java.lang.Throwable
error
or exceptionpublic abstract void service(ServletRequest req, ServletResponse res) throws ServletException, java.io.IOException
Servlet.service(javax.servlet.ServletRequest, javax.servlet.ServletResponse)
.
This method is declared abstract so subclasses, such as
HttpServlet
, must override it.
service
in interface Servlet
req
- the ServletRequest
object
that contains the client's requestres
- the ServletResponse
object
that will contain the servlet's responseServletException
- if an exception occurs that
interferes with the servlet's
normal operation occurredjava.io.IOException
- if an input or output
exception occurspublic java.lang.String getServletName()
ServletConfig.getServletName()
.getServletName
in interface ServletConfig