Java, .NET, PHP, PYTHON, ANGULAR, ML, Data Science, Testing, CI Tutorials in Easy Languages.

"Best Software Training, Internship, Project Development center of Indore India, Helpline 780506-3968"

How to redirect from Servlet to Jsp or Servlet to Servlet.JSP Navigation

How we can redirect from Servlet to Jsp or Servlet to Servlet :-

1) using response.sendRedirct()

     It will complete roundtrip from server to client then the client to the server means if we will redirect to the JSP page then the response will be submitted to the browser then the browser will navigate the content into different web pages.


Steps to implement it:-

1)  create a JSP Web page and name it home.jsp and Write the following code:-


<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
    pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
<form action="Helloser" method="post">

<input type="submit" value="NEXT" />

</form>
</body>
</html>


2)   Create Servlet and name it Helloser

package scs;

import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

/**
 * Servlet implementation class Helloser
 */
@WebServlet("/Helloser")
public class Helloser extends HttpServlet {
private static final long serialVersionUID = 1L;
       
    /**
     * @see HttpServlet#HttpServlet()
     */
    public Helloser() {
        super();
        // TODO Auto-generated constructor stub
    }

/**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
response.sendRedirect("page3.jsp");
}

}


3)  create page3.jsp

<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
    pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
<%
int a,b,c;
a=1000;
b=2000;
c=a+b;
out.println("Result is " + c);
%>
</body>
</html>



note:-  when we click on the button then JSP will navigate to servlet and the servlet will navigate to again the JSP Web page. URL will change because of response.sendRedirect() will complete roundtrip for navigation.





2) using Request Dispatcher Interface using forward and include

  It will not complete a round trip means Request-dispatcher will directly send a request to another web page from a web server using the forward and include method hence we can not manage session and cookie using Request-dispatcher object.

1)  forward():-   We can directly send the request from the servlet class to JSP web content from Web Server, the URL will not be changed because page redirection will be managed by Server.


2)  include():-   We can include the content of the web page to servlet class means it will display combined result means the result of servlet and JSP page both will be displayed using response object.


Code of Servlet:


import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;


public class MyServlet extends HttpServlet {

    @Override
    protected void doGet(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        PrintWriter out = response.getWriter();
        response.setContentType("text/html");
        out.write("Servlet");
        RequestDispatcher req =  request.getRequestDispatcher("ArrExample.jsp");
        req.include(request, response);
        //req.forward(request, response);
       // response.sendRedirect("ArrExample.jsp");
        //out.print(out);
    }


}

3)  using JavaScript:-  we can write Javascript code to implement redirection from one web page to another under a web browser.


We will write 

<script>

window.location='jsppage or servlet url';
</script>



Post a Comment

POST Answer of Questions and ASK to Doubt

Previous Post Next Post