This week's book giveaway is in the OO, Patterns, UML and Refactoring forum.
We're giving away four copies of Refactoring for Software Design Smells: Managing Technical Debt and have Girish Suryanarayana, Ganesh Samarthyam & Tushar Sharma on-line!
See this thread for details.
The moose likes Servlets and the fly likes lose request object when using response.sendRedirect() Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login

JavaRanch » Java Forums » Java » Servlets
Bookmark "lose request object when using response.sendRedirect()" Watch "lose request object when using response.sendRedirect()" New topic

lose request object when using response.sendRedirect()

dhriti joshi
Ranch Hand

Joined: Aug 13, 2002
Posts: 82
for redirecting a url i am using response.sendRedirect ,but in this case I lose the request object and can not retrieve the request object and request attributes on my resulting url.
kindly suggest what can i use to get thr request attributes.
anupa oru
Ranch Hand

Joined: Jan 15, 2005
Posts: 118
you can use RequestDispatcher.forward method to forward request some other resource where request will be available in forwarded page.
Neeraj Dheer
Ranch Hand

Joined: Mar 30, 2005
Posts: 225
When you do a request.sendRedirect(), you are sending the response back to the client, and the client akes another request to fetch the redirect URL. Since this becomes a separate request, and the first request ends once the redirect is sent back to the client, that request object and and hence its attributes are lost.

to overcome this:
1. use the method described in the above post. use RequestDispatcher.forward or RequestDispatcher.include

2. if using redirect is necessary, u will have to send the request attributes manually as hidden form fields and retrieve them in the next servlet/JSP OR put the attributes in the session.
I agree. Here's the link:
subject: lose request object when using response.sendRedirect()
jQuery in Action, 3rd edition