Nearby lessons
9 of 34Servlet - ServletRequest (Form Parameters, Headers, Cookies)
- Retrieve form parameters (single and multi-valued)
- Retrieve request headers (String, int, and Date)
- Retrieve cookies from the request
- Get client and server information
ServletRequest provides methods to retrieve form parameters, request headers, cookies, and client/server information. This lesson covers all retrieval methods with complete code examples.
Retrieving Form Parameters
Form parameters are key-value pairs where both key and value are String objects. A parameter can have single or multiple values.
| Method | Returns | Notes |
|---|---|---|
getParameter(String pname) | Single String value | Returns first value if multi-valued; null if not found; argument is case-sensitive |
getParameterValues(String pname) | String[] array | Returns all values; null if not found; argument is case-sensitive |
getParameterNames() | Enumeration of all parameter names | — |
getParameterMap() | Map object | Contains all parameter names and values |
Demo: register.html
HTML form with single-value (name, contact) and multi-value (course dropdown) parameters:
FormDemoServlet.java
Folder structure: advapps1D/ → register.html, WEB-INF/ → classes/ → FormDemoServlet.class
Retrieving Request Headers
For every request, the browser sends configuration information in the form of headers — media types accepted, encoding types, accepted languages, browser type, etc.
Common request headers:
accept— media types accepted by browser (html, pdf, images, etc.)accept-encoding— encoding types accepted (gzip, deflate, etc.)accept-language— language types accepted (en-us, etc.)user-agent— type of browsercookie— used to send cookies for session management
Utilities of request headers:
- accept-encoding: Server sends compressed data, reducing download time
- user-agent: Server sends browser-specific customized response
- cookie: Server uses cookies for session management
Header Retrieval Methods
| Method | Returns | Notes |
|---|---|---|
getHeader(String hname) | Single String value | null if not found; first value if multi-valued; argument is case-insensitive |
getHeaders(String hname) | Enumeration of all values | Empty Enumeration (not null) if not found; argument is case-insensitive |
getHeaderNames() | Enumeration of all header names | — |
getIntHeader(String hname) | int value | For headers with integer values (e.g. content-length) |
getDateHeader(String hname) | long (milliseconds since Jan 1, 1970) | For headers with Date values |
RequestHeaderDemoServlet.java
Folder structure: advapps1E/ → WEB-INF/ → classes/ → RequestHeaderDemoServlet.class
Displays all request headers in an HTML table:
Retrieving Cookies
The HttpServletRequest interface provides a method to retrieve cookies from the request:
Cookie[] c = req.getCookies();
Retrieving Client and Server Information
ServletRequest defines methods to get client and server information:
| Method | Returns |
|---|---|
getRemoteHost() | Fully qualified name of the client |
getRemoteAddr() | IP address of the client |
getRemotePort() | Port number on which client is running |
getServerName() | Server name to which request was sent |
getServerPort() | Port number on which server is running |
ClientServerInfoServlet.java
Folder structure: advapps1E/ → WEB-INF/ → classes/ → ClientServerInfoServlet.class
Summary: Retrieval Methods
To Retrieve Form Parameters:
- getParameter()
- getParameterValues()
- getParameterNames()
- getParameterMap()
To Retrieve Request Headers:
- getHeader()
- getHeaders()
- getHeaderNames()
- getIntHeader()
- getDateHeader()
To Retrieve Cookies:
- Cookie[] c = req.getCookies();
To Retrieve Client and Server Information:
- getRemoteHost()
- getRemoteAddr()
- getRemotePort()
- getServerName()
- getServerPort()
- 4 parameter methods: getParameter, getParameterValues, getParameterNames, getParameterMap
- 5 header methods: getHeader, getHeaders, getHeaderNames, getIntHeader, getDateHeader
- Client info: getRemoteHost, getRemoteAddr, getRemotePort, getServerName, getServerPort
- Exam-style questions at the end