forward
Control can be forward to resources available within the server from
where the call is made. This transfer of control is done by the
container internally and browser / client is not involved. This is the
major difference between forward and sendRedirect. When the forward is
done, the original request and response objects are transfered along
with additional parameters if needed.
redirect
Control can be redirect to resources to different servers or domains.
This transfer of control task is delegated to the browser by the
container. That is, the redirect sends a header back to the browser /
client. This header contains the resource url to be redirected by the
browser. Then the browser initiates a new request to the given url.
Since it is a new request, the old request and response object is lost.
For example, sendRedirect can transfer control from http://javapapers.com to http://anydomain.com but forward cannot do this.
‘session’ is not lost in both forward and redirect.
To feel the difference between forward and sendRedirect visually see the address bar of your browser,
in forward, you will not see the forwarded address (since the browser is not involved)
in redirect, you can see the redirected address.
in forward, you will not see the forwarded address (since the browser is not involved)
in redirect, you can see the redirected address.
No comments:
Post a Comment