This week's book giveaway is in the Servlets forum.
We're giving away four copies of Murach's Java Servlets and JSP and have Joel Murach on-line!
See this thread for details.
The moose likes Web Component Certification (SCWCD/OCPJWCD) and the fly likes Servlet init method Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login


Win a copy of Murach's Java Servlets and JSP this week in the Servlets forum!
JavaRanch » Java Forums » Certification » Web Component Certification (SCWCD/OCPJWCD)
Bookmark "Servlet init method" Watch "Servlet init method" New topic
Author

Servlet init method

amar verma
Greenhorn

Joined: Jun 09, 2005
Posts: 19
In java classes generally we do initalizations in a constructor,
but in case of Servlet , init() method is written , why couldn't we do the same job in a constructor of servlet.

Will it matter if we move body of init method in constructor of servlet and keep init method blank.

thanks
Amar


Amar Verma<br />---------------<br />SCJP 1.4<br />SCWCD1.4 (Preparing)<br />Dont even follow the leading path, create your own path and leave the trail.
Yashodip Patil
Greenhorn

Joined: Jun 17, 2005
Posts: 1
Servlet's init method is invokes after container instantiate servlet.
Servlet object made in container after constructor call, and this object requires to container to fill information like ServletConfig(i.e. init parameter info, servlet env. info, and so on..) .
if u move code from init to constructor , specialy init parameter accesing code, it will not work becaus uptill then no servletconfig set by container..
Anand Wadhwani
Ranch Hand

Joined: Mar 21, 2005
Posts: 151
A servlet MUST be intiailized by container before it can service requests. There are many things done by container behind the scene when it initializes a servlet but for now you can understand this one easily:

Before invoking your overridden init method container will read servlet inti parameter from deployment descriptor and store them on in a special object called ServletConfig object.

There are three ways of getting this done by container:

1. Do not override init() at all. In this case container will call hidden version of init method init(ServletConfig config) this comes from Servlet interface implementation class.

2. Override this method and call super.init() method as a very first line inside method.

3. Override init() method of Generic servlet. This method is called by init(config)

Hope I have been clear enough while explaining this!


SCWCD 1.4<br />---------------------<br />Ability is what you're capable of. <br />Motivation determines what you do. <br />Attitude determines how well you do it.<br />---------------------
 
I agree. Here's the link: http://aspose.com/file-tools
 
subject: Servlet init method
 
Similar Threads
Constructor
why we need init method in servlet
Why Init Method, why can't we use constructor instead?
Why does a servlet has init method
Why init ( ) why not Constructor ??