During the lifecycle of a servlet init() method is called . Now there are two init() methods one that takes a ServletConfig as argument and the other which does not take any argument . Which of the two is the default that a constructor calls when a servlet is initialized . and when is the init() method with the ServletConfig argument called ?
the one with the ServletConfig is called by the container and has the properties in it from the web.xml.
You shouldn't touch that one.
The init(Servletconfig) will call the other init() where you get your shot to initialize.
Don't override init(Servletconfig) without calling super.init(ServletConfig).
I am sorry about that Mark its container and not constructor . Does that mean when my servlet is initialized by the container , after calling the servlet constructor the container calls the init(ServletConfig) and it is in this init(ServletConfig) that the init() method is called .
init(ServletConfig) is the template method, which stores ServletConfig, and then delegates to init(). This is what javax.servlet.GenericServlet.init(ServletConfig) looks like:
And, if you really want to override init(ServletConfig), make sure you invoke super.init(ServletConfig);, usually as the first line, though it's not strictly required.
|BSc in Electronic Eng| |SCJP 6.0 91%| |SCWCD 5 92%|
Does that mean when my servlet is initialized by the container , after calling the servlet constructor the container calls the init(ServletConfig) and it is in this init(ServletConfig) that the init() method is called .
yes ragi singh,
its like that (and thats the way it is )