Win a copy of Re-engineering Legacy Software this week in the Refactoring forum
or Docker in Action in the Cloud/Virtualization forum!
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

javax.servlet.ServletConfig Problem

 
A.K.A.F Illayapparachchi
Greenhorn
Posts: 1
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
To get servlet init parameters, In head first book , I saw that it use the following code :

getServletConfig().getInitParameter("Name of The parameter");

add it also saying that getServletConfig() passes the Reference of the ServletConfig.

But every Servlet extends form the HttpServlet . And It extends GenericServlet(it is also the place where getServletConfig() is defines). This GenericServlet implements the ServletConfig. If Generally Speaking, GenericServlet is a ServletConfig. There for Every Servlet is a ServletConfig.

All methods in ServletConfig is implemented in the GenericServlet.

Therefor without calling getServletConfig() and getting it's reference. We can directly calls the getInitparameter(), getServletConfig(), getServletName() & getInitParameterNames().


My Problem is this

out.println(getServletConfig().getInitParameter("value name"));


out.println(getInitParameter("value name"));


both of the lines compiles properly.
both of the lines prints same output.(In the Web applications that i have made)
but second one is easy to use.


Is there any difference in this? or Is it a convention?
 
Michael Ku
Ranch Hand
Posts: 510
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
No difference, just one Object has a reference to the other...

Use whatever approach you like
 
jasson jasson
Greenhorn
Posts: 6
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Originally posted by Michael Ku:
No difference, just one Object has a reference to the other...

Use whatever approach you like

getServletConfig() return a ServletConfig's reference,then you can call getInitParameter(),you will get the init propertes;
but getInitParameter(),this is GenericServlet's method,the code in this method is
public String getInitParameter(String property)
{
return config.getInitParameter(property);
}
so the two method both right;
 
Bear Bibeault
Author and ninkuma
Marshal
Pie
Posts: 64631
86
IntelliJ IDE Java jQuery Mac Mac OS X
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
"jasson jasson", please check your private messages for an important message from me.
 
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic