+8 votes
1.6k views
in Programming by (250 points)
i am using a servlet by jsp i am calling my main and want to Redirect URL in then end of program.
closed

2 Answers

+1 vote
by (990 points)
selected by
 
Best answer
you can redirect your url like this by servlet request
 
protected void  doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
 
try{
response.sendRedirect("http://"+URL+");
}catch(Throwable e){
e.printStackTrace();
}

}

0 votes
by Expert (5.1k points)

 

The simplest way of redirecting a request to another page is using method sendRedirect() of response object. Following is the signature of this method:

public void HttpServletResponse.sendRedirect(String location)
throws IOException 

This method sends back the response to the browser along with the status code and new page location. You can also use setStatus() and setHeader() methods together to achieve the same:

....
String site = "http://www.newpage.com" ;
response.setStatus(response.SC_MOVED_TEMPORARILY);
response.setHeader("Location", site); 
....

Example:

This example shows how a servlet performs page redirection to another location:

import java.io.*;
import java.sql.Date;
import java.util.*;
import javax.servlet.*;
import javax.servlet.http.*;

public class PageRedirect extends HttpServlet{
    
  public void doGet(HttpServletRequest request,
                    HttpServletResponse response)
            throws ServletException, IOException
  {
      // Set response content type
      response.setContentType("text/html");

      // New location to be redirected
      String site = new String("http://www.google.com");

      response.setStatus(response.SC_MOVED_TEMPORARILY);
      response.setHeader("Location", site);    
    }
} 

Now let us compile above servlet and create following entries in web.xml

....
 <servlet>
     <servlet-name>PageRedirect</servlet-name>
     <servlet-class>PageRedirect</servlet-class>
 </servlet>

 <servlet-mapping>
     <servlet-name>PageRedirect</servlet-name>
     <url-pattern>/PageRedirect</url-pattern>
 </servlet-mapping>
....

Now call this servlet using URL http://localhost:8080/PageRedirect. This would take you given URL http://www.google.com.

Not a Member yet?

Ask to Folks Login

My Account

Your feedback is highly appreciated