Class HttpServlet
java.lang.Object
javax.servlet.GenericServlet
javax.servlet.http.HttpServlet
- All Implemented Interfaces:
Serializable,Servlet,ServletConfig
The mother-of-all-HttpServlets.
Every normal http servlet extends this class and overrides either the doGet
or doPost methods (or both).
The server calls service. Service in its turn calls doGet, doPost, whatever,
depending on the client's request.
- Since:
- Servlet API 1.0
- Version:
- Servlet API 2.2
- See Also:
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected voiddoDelete(HttpServletRequest request, HttpServletResponse response) This method is called on a "DELETE" request.protected voiddoGet(HttpServletRequest request, HttpServletResponse response) This method is called on a "GET" request.protected voiddoOptions(HttpServletRequest request, HttpServletResponse response) This method is called on a "OPTIONS" request.protected voiddoPost(HttpServletRequest request, HttpServletResponse response) This method is called on a "POST" request.protected voiddoPut(HttpServletRequest request, HttpServletResponse response) This method is called on a "PUT" request.protected voiddoTrace(HttpServletRequest request, HttpServletResponse response) This method is called on a "TRACE" request.protected longgetLastModified(HttpServletRequest request) Returns the time the requested uri was last modified in seconds since 1 january 1970.protected voidservice(HttpServletRequest request, HttpServletResponse response) This method looks whether the request is a POST, GET, etc method, and then calls the appropriate doPost, doGet, whatever method.
If the request method is something it can't handle it sends a HttpServletResponse.SC_BAD_REQUEST error through the response.voidservice(ServletRequest request, ServletResponse response) Frontend for calling service(HttpServletRequest,HttpServletResponse).Methods inherited from class javax.servlet.GenericServlet
destroy, getInitParameter, getInitParameterNames, getServletConfig, getServletContext, getServletInfo, getServletName, init, init, log, log
-
Constructor Details
-
HttpServlet
public HttpServlet()Does nothing- Since:
- Servlet API 1.0
-
-
Method Details
-
doDelete
protected void doDelete(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException This method is called on a "DELETE" request. The default implementation is that HttpServletResponse.SC_BAD_REQUEST (error nr: 400) and the message "Method \"DELETE\" is not supported by this servlet" is returned to the client.- Throws:
ServletException- if an Servlet Exception occursIOException- if an IOException occurs- Since:
- Servlet API 2.0
-
doGet
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException This method is called on a "GET" request. The default implementation is that HttpServletResponse.SC_BAD_REQUEST (error nr: 400) and the message "Method \"GET\" is not supported by this servlet" is returned to the client.- Throws:
ServletException- if an Servlet Exception occursIOException- if an IOException occurs- Since:
- Servlet API 1.0
-
doOptions
protected void doOptions(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException This method is called on a "OPTIONS" request. It tells the client which methods are supported by the servlet.
This comes down to an implementation where HEAD, TRACE and OPTIONS are supported by default because this class contains default implementations of them. GET, POST, DELETE and PUT are added to this list if the subclass has its own implementation of the doGet, doPost, doDelete or doPut method respectively. Note:
This implementation is probably not the most efficient one, but the whole OPTIONS thing is intended for debugging purposes, and this implementation does the job.- Throws:
ServletException- if an Servlet Exception occursIOException- if an IOException occurs- Since:
- Servlet API 2.0
-
doPost
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException This method is called on a "POST" request. The default implementation is that HttpServletResponse.SC_BAD_REQUEST (error nr: 400) and the message "Method \"POST\" is not supported by this servlet" is returned to the client.- Throws:
ServletException- if an Servlet Exception occursIOException- if an IOException occurs- Since:
- Servlet API 1.0
-
doPut
protected void doPut(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException This method is called on a "PUT" request. The default implementation is that HttpServletResponse.SC_BAD_REQUEST (error nr: 400) and the message "Method \"PUT\" is not supported by this servlet" is returned to the client.- Throws:
ServletException- if an Servlet Exception occursIOException- if an IOException occurs- Since:
- Servlet API 2.0
-
doTrace
protected void doTrace(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException This method is called on a "TRACE" request. This method is for debugging purposes.
When a client makes a TRACE request the following is returned:
content type = "message/http"
message size: <size of the complete message>
first line of the message : TRACE <requested uri> <protocol>
on the following lines all the request header names and values- Throws:
ServletException- if an Servlet Exception occursIOException- if an IOException occurs- Since:
- Servlet API 2.0
-
getLastModified
Returns the time the requested uri was last modified in seconds since 1 january 1970. Default implementation returns -1.- Since:
- Servlet API 1.0
-
service
protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException This method looks whether the request is a POST, GET, etc method, and then calls the appropriate doPost, doGet, whatever method.
If the request method is something it can't handle it sends a HttpServletResponse.SC_BAD_REQUEST error through the response.- Throws:
ServletException- an error has occuredIOException- an error has occured- Since:
- Servlet API 1.0
-
service
public void service(ServletRequest request, ServletResponse response) throws ServletException, IOException Frontend for calling service(HttpServletRequest,HttpServletResponse).This method tries to typecast the ServletRequest and the ServletResponse to HttpServletRequest and HttpServletResponse and then call service(HttpServletRequest,HttpServletResponse).
- Specified by:
servicein interfaceServlet- Specified by:
servicein classGenericServlet- Parameters:
request- The client's requestresponse- The class to write the response date to.- Throws:
ServletException- an error has occuredIOException- an error has occured- Since:
- Servlet API 1.0
- See Also:
-