[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: servlet forward: things happen twice
could it be....
Servlet A
> > =========
> > public void doPost(HttpServletRequest request,
> > HttpServletResponse response) throws
> ServletException
> > {
> > doPost(request, response);
> > }
you are calling doPost(req,res) inside your doPost.
Good Luck,
Tim
--- kingram@bellsouth.net wrote:
> > RequestDispatcher rd =
> > getServletContext().getRequestDispatcher("B");
> > rd.forward(request, response);
> ^^^^^^^^^^^^^^^^^^
> > } else {
> > RequestDispatcher rd =
> > request.getRequestDispatcher("C");
>
> I am sure someone out there has the time to explain
> this. (busy at work). But to me, it seems kind of
> ambigious on the part of the API to have a
> getRequestionDispatcher() for
> javax.servlet.ServletContext and
> javax.servlet.http.HttpServletRequest. Does someone
> have a good example where this can be VERY useful?
>
>
>
> >
> > From: Yong Wang <wymz@yahoo.com>
> > Date: 2003/02/11 Tue AM 11:47:16 EST
> > To: ajug-members@ajug.org
> > Subject: servlet forward: things happen twice
> >
> > Hi, I wonder if anyone could spot the problem here
> bcz
> > I am sure it is something very simple that I
> > overlooked:
> >
> > I have three servlets, A, B and C, where A
> forwards to
> > B or C based on some flags in request parameter.
> But
> > when A forwards to B, somehow both servlet A and B
> get
> > called twice by only a single get request. The
> > environment is tomcat 4.1.
> >
> > Servlet A
> > =========
> > public void doPost(HttpServletRequest request,
> > HttpServletResponse response) throws
> ServletException
> > {
> > doPost(request, response);
> > }
> >
> > public void doGet(HttpServletRequest request,
> > HttpServletResponse response) throws
> ServletException
> > {
> >
> > String key = (String)
> request.getParameter("key");
> > String idx = (String)
> request.getParameter("index");
> >
> > try
> > {
> > if (key != null && idx != null) {
> > RequestDispatcher rd =
> > getServletContext().getRequestDispatcher("B");
> > rd.forward(request, response);
> > } else {
> > RequestDispatcher rd =
> > request.getRequestDispatcher("C");
> > rd.forward(request, response);
> > } catch (Exception e) {
> > ;
> > }
> >
> > Servlet B
> > =========
> >
> > public void doPost(HttpServletRequest request,
> > HttpServletResponse response) throws
> ServletException
> > {
> > doPost(request, response);
> > }
> >
> > public void doGet(HttpServletRequest request,
> > HttpServletResponse response) throws
> ServletException
> > {
> > String key = (String)
> request.getParameter("key");
> > String idx = (String)
> request.getParameter("key");
> >
> > // do some processing and output to response...
> > }
> >
> > Servlet C (actually a JSP)
> > ===========
> > code omitted.
> >
> > I would appreciate any insight. pls email me
> directly
> > if you want to see the entire source listing.
> Thanks!
> >
> > yong
> >
> > =====
> >
> > // My alternate email: yongwang@mindspring.com
> >
> >
> > __________________________________________________
> > Do you Yahoo!?
> > Yahoo! Shopping - Send Flowers for Valentine's Day
> > http://shopping.yahoo.com
> >
> >
>
__________________________________________________
Do you Yahoo!?
Yahoo! Shopping - Send Flowers for Valentine's Day
http://shopping.yahoo.com