File APIs for Java Developers
Manipulate DOC, XLS, PPT, PDF and many others from your application.
The moose likes Servlets and the fly likes Difference between getServlet() & getRequestDispatcher() Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login

Win a copy of Java Interview Guide this week in the Jobs Discussion forum!
JavaRanch » Java Forums » Java » Servlets
Bookmark "Difference between getServlet() & getRequestDispatcher()" Watch "Difference between getServlet() & getRequestDispatcher()" New topic

Difference between getServlet() & getRequestDispatcher()

Raghavendra Holla
Ranch Hand

Joined: Jun 02, 2000
Posts: 58
I am confused with above two usage and their advantage over others. By doing

1) RequestDispatcher rd = getServletContext().getRequestDispatcher("/servlet/emSessionInit");

2) emSessionInit ems = (BookDBServlet) getServletConfig().getServletContext().getServlet("emSessionInit");
My doubts are
a) What are limitations of 1 & 2, which context they can be used.
b) Can I do (2), i.e. By getting handle to servlet can i call doPost method of that servlet?
c) Is it possible to call any other method of servlet by using request dispacther object?
d) Clearly it is not possible to call servlet residing in diffrent server than the current server by 2, I am correct ?
e) When I use forward or include of RequestDispatch object what methods of calling servlet called, is it determined by what method in request object?

Sorry ... the list is big.. But if anybody can help me it would be great help for me. I think these quesion has to be answered by experts, Frank & Bill any help from you end?
Thanks once again,
Frank Carver

Joined: Jan 07, 1999
Posts: 6920
There is one important distinction. Option 2, getServlet() simply won't work in servlet containers conforming to version 2.2 or later of the Servlet API. getServlet has been deprecated and defined to always return null, so you have to use the RequestDispatcher interface.
This only leaves your question e), and I'm not sure about that one. But check the Servlet API documentation at Sun's web site.

Read about me at ~ Raspberry Alpha Omega ~ Frank's Punchbarrel Blog
I agree. Here's the link:
subject: Difference between getServlet() & getRequestDispatcher()
It's not a secret anymore!