Using redirect instead of forward

T

teser3

In Tomcat 4.1.27 servlet I am using RequestDispatcher type to forward
a message and get it in JSP. How can I do the same using redirect
instead?

Here is what I have -

Servlet:
request.setAttribute("MyMessage", "Hello");
RequestDispatcher requestDispatcher = request.getRequestDispatcher("/
toPage.jsp");
requestDispatcher.forward(request, response);


toPage.jsp
out.println(request.getAttribute("MyMessage"));


Now using redirect would this be the best way?
String myMessage = "Hello";
session.setAttribute("myMessage",myMessage);
response.sendRedirect("­/toPage.jsp");


toPage.jsp
out.println(session.getAttribute("MyMessage"));
 
A

Arne Vajhøj

In Tomcat 4.1.27 servlet I am using RequestDispatcher type to forward
a message and get it in JSP. How can I do the same using redirect
instead?

Here is what I have -

Servlet:
request.setAttribute("MyMessage", "Hello");
RequestDispatcher requestDispatcher = request.getRequestDispatcher("/
toPage.jsp");
requestDispatcher.forward(request, response);


toPage.jsp
out.println(request.getAttribute("MyMessage"));


Now using redirect would this be the best way?
String myMessage = "Hello";
session.setAttribute("myMessage",myMessage);
response.sendRedirect("­/toPage.jsp");


toPage.jsp
out.println(session.getAttribute("MyMessage"));

I think keeping forward instead of switching to send redirect
is the right way.

Arne
 
C

Chris Riesbeck

Lew said:
It is less traffic between client and server to use forward rather than
redirct. You can pass information via the request rather than the
session with forward. You can hang on to server-side resources through
a forward. You stay within the application context with a forward. A
forward is faster, cleaner and easier to control than a redirect.

For my personal webapps, I forward after a GET, but redirect after a
successful POST to send the client to a "here's the current state" page.
The page can be reloaded or gone back to without triggering "this page
contains POSTed data." I much prefer this user experience.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,994
Messages
2,570,222
Members
46,810
Latest member
Kassie0918

Latest Threads

Top