File APIs for Java Developers
Manipulate DOC, XLS, PPT, PDF and many others from your application.
http://aspose.com/file-tools
The moose likes Servlets and the fly likes jsp:forward and res.sendRedirect() Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login


Win a copy of Soft Skills this week in the Jobs Discussion forum!
JavaRanch » Java Forums » Java » Servlets
Bookmark "jsp:forward and res.sendRedirect()" Watch "jsp:forward and res.sendRedirect()" New topic
Author

jsp:forward and res.sendRedirect()

sree bk
Greenhorn

Joined: Jan 26, 2001
Posts: 7
Hi
I think i got the last question wrong. I read somewhere that fsp:forward can ONLY forward to a URL on the local server (or within the same context ?) while this is not so with sendRedirect()?
Isn't this a big limitation then ?
sree bk
Alex Kravets
Ranch Hand

Joined: Jan 24, 2001
Posts: 476
I guess it could be looked at as limitation, but with <jsp:forward> you can also send parameters to the next page. Sure you can do it using: res.sendRedirect("www.website.com?var1=33");, but then you will see what you've sent once the redirected page is loaded, with jsp:forward I don't think you will.

All right brain, you don't like me and I don't like you, but let's just do this one thing so I can get back to killing you with beer.<br /> <br />- Homer Simpson
Tony Alicea
Desperado
Sheriff

Joined: Jan 30, 2000
Posts: 3222
    
    5
From http://java.oreilly.com/news/jsptips_1100.html (Top Ten JSP Tips)
4.Choosing Between Forward and Redirect
If you want to pass the control from one page to another, you can either
forward to the other page, as described above, or redirect to the new page
(using the sendRedirect() method of the implicit response object).
There's an important difference between a forward and a redirect. When
you forward, the target page is invoked by the JSP container through an
internal method call; the new page continues to process the same request
and the browser is not aware of the fact that more than one page is
involved. A redirect, on the other hand, means that the first page tells the
browser to make a new request to the target page. The URL shown in the
browser therefore changes to the URL of the new page when you redirect,
but stays unchanged when you use forward. A redirect is slower than a
forward because the browser has to make a new request. Another difference
is that request scope objects are no longer available after a redirect because
it results in a new request. If you need to pass data to the page you redirect
to, you have to use a query string and pass them as request parameters (or
save the data as session or application scope objects).
So how do you decide if you should use forward or redirect? I look at it
like this: Forwarding is always faster, so that's the first choice. But since
the URL in the browser refers to the start page even after the forward, I ask
myself what happens if the user reloads the page (or just resizes the
window; this often reloads the page automatically). If the start page is a
page that updates some information, such as adding an item to the shopping
cart or inserting information in a database, I don't want it to be invoked
again on a reload. To show the result of the processing, I therefore redirect
to a page with a confirmation message, instead of using forward.


Tony Alicea
Senior Java Web Application Developer, SCPJ2, SCWCD
 
I agree. Here's the link: http://aspose.com/file-tools
 
subject: jsp:forward and res.sendRedirect()