Home Servlets Header Information available from the client in Servlet

Related Tutorials


 
 

Share on Google+Share on Google+

Header Information available from the client in Servlet

Advertisement
In this section you will studied how to display the header information in servlet.

Header Information available from the client in Servlet

     

In this section you will studied how to display the header information in servlet.

When a HTTP client sends a request, generally GET or POST method is specified. It can send a number of headers. Here are some headers:

Accept - MIME type, the browser prefers.
Accept-Charset - The Character set the browser expects.
Accept-Language - The language which the browser is accepting.
Connection - If a servlet gets a keep-Alive value or gets a request line indicating HTTP 1.1, it may be able to take advantage of connection.
Host (host and port as defined in url).
Content-Length (for POST messages).
User-Agent (type of browser, if servlet is returning browser-specific content).

In the given example, method getHeaderNames() is called  to get an Enumeration of all header names received on this particular request. The getMethod() returns the main request method (GET or POST, but HEAD, PUT, DELETE are also possible). The getRequestURI() method returns the URI (the part of url that came after the host and port , but before the form data). The getRequestProtocol() returns the protocol which is generally  HTTP/1.0 or HTTP/1.1. Using while loop, all the headers are passed into the header. Now if header is not equal to null, all the header information will be displayed by using the method req.getHeader().

Here is the code of HeaderInformation.java

import java.io.IOException;
import java.io.PrintWriter;
import java.util.Enumeration;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class HeaderInformation extends HttpServlet {
  
  public void doGet(HttpServletRequest req, HttpServletResponse res)
  throws IOException, ServletException {
  printHeader(req, res);
  }
  public void doPost(HttpServletRequest req, HttpServletResponse res)
  throws IOException, ServletException {
  printHeader(req, res);
  }
  public void printHeader(HttpServletRequest req,
  HttpServletResponse res) throws IOException, ServletException {
  String header = null;
  String head = "<html><head><title> Header Information</title>
  </head><body>"
;
  String foot = "</body></html>";
  res.setContentType("text/html");
  PrintWriter pw = res.getWriter();
  Enumeration enumeration = req.getHeaderNames();
  pw.println(head);
  pw.println("<h2> Header Information </h2>");
  pw.println("<B>Request Method: </B>" +
  req.getMethod() + "<BR>\n" +
  "<B>Request URI: </B>" +
  req.getRequestURI() + "<BR>\n" +
  "<B>Request Protocol: </B>" +
  req.getProtocol() + "<BR><BR>\n" );

  pw.println("<table>");
  while (enumeration.hasMoreElements()) {
  header = (String) enumeration.nextElement();
  if (header != null) {
  pw.println("<tr><td><b>" + header + "</td>");
  pw.println("<td >" + req.getHeader(header)
  "</td></tr>");
  }
  }
  pw.println("</table><br>");
  pw.println(foot);

  }
}

After compiling the servlet, place it to the appropriate place in the Tomcat. Run the tomcat. Open the browser and type the url http://localhost:8080/Myexamples/HeaderInformation

 Following output will be displayed.

Download Source Code

Advertisements

If you enjoyed this post then why not add us on Google+? Add us to your Circles



Liked it!  Share this Tutorial


Follow us on Twitter, or add us on Facebook or Google Plus to keep you updated with the recent trends of Java and other open source platforms.

Posted on: August 20, 2008

Related Tutorials

Discuss: Header Information available from the client in Servlet  

Post your Comment


Your Name (*) :
Your Email :
Subject (*):
Your Comment (*):
  Reload Image
 
 
Comments:2
Praveen Kumar
January 9, 2012
Include in servlet

Hi, I just need a solution to include my graphical header footer set of html code to my servlet programm since i cant make this static for each servlet, i need some thing like include file in servlet program.
Marco
August 25, 2012
NoAeMHCmPXPmgz

Good point. I hadn't thhougt about it quite that way. :)
DMCA.com