Latest Tutorials| Questions and Answers|Ask Questions?|Site Map



Home Servlets Servlet Container

Related Tutorials


 
 

Share on Google+Share on Google+

Servlet Container

Advertisement
A servlet container is nothing but a compiled, executable program. The main function of the container is to load, initialize and execute servlets.

Servlet Container

     

A servlet container is nothing but a compiled, executable program. The main function of the container is to load, initialize and execute servlets. The servlet container is the official Reference Implementation for the Java Servlet and JavaServer Pages technologies. The Java Servlet and JavaServer Pages specifications are developed by Sun under the Java Community Process.

A container handles large number of requests as it can hold many active servlets, listeners etc. It is interesting to note here that the container and the objects in a container are multithreaded. So each object must be thread safe in a container as the multiple requests are being handled by the container due to the entrance of more than one thread to an object at a time.

Note : A Servlet container may run stand alone i.e. without a web server or even on another host.

We can categorize the servlet containers as:

I. A simple servlet container is not fully functional and therefore it can only run very simple servlets and does the following :

  • Wait for HTTP request.
  • Construct a ServletRequest object and a ServletResponse object.
  • If the request is for a static resource, invoke the process method of the StaticResourceProcessor instance, passing the ServletRequest and ServletResponse objects.
  • If the request is for a servlet, load the servlet class and invoke its service method, passing the ServletRequest and ServletResponse objects. Note that in this servlet container, the servlet class is loaded every time the servlet is requested.

II. A fully functional servlet container additionally does the following for each HTTP request for a servlet:

  • When the servlet is called for the first time, load the servlet class and call its init method (once only).
  • For each request, construct an instance of javax.servlet.ServletRequest and an instance of javax.servlet.ServletResponse.
  • Invoke the servlet's service method, passing the ServletRequest and ServletResponse objects.
  • When the servlet class is shut down, call the servlet's destroy method and unload the servlet class.

Now lets see what a servlet container does for each HTTP request for a servlet, in general :

  • The servlet container loads the servlet class and calls the init method of the servlet as soon as the servlet is called for the first time.
  • Then this container makes an instance of javax.servlet.ServletRequest and javax.servlet.ServletResponse for each request.
  • Then it passes the ServletRequest and ServletResponse objects by invoking the servlet's service method.
  • Finally, it calls the destroy method and unload the servlet class when the servlet class is to be shut down.
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: July 13, 2007

Related Tutorials

Discuss: Servlet Container   View All Comments

Post your Comment


Your Name (*) :
Your Email :
Subject (*):
Your Comment (*):
  Reload Image
 
 
Comments:5
Aroon
April 20, 2011
Java

Can we say Java as a Spiritual Language?
Chandan kumar
November 18, 2011
Servlet

I want to write a program for addition of two number.can i write. If i can write then how.
abc
February 3, 2012
servlets

explain about types of containers.
Anupam Nath
January 4, 2013
Name of popular containers

Can you name few containers available in the market?
anonymousss
July 29, 2013
Servlet Container

When does the servlet container is loaded by the web server like apache
DMCA.com