COMO LO HAGO?

sara
12 de Julio del 2005
Hola es muy sencillo: Estoy intentando comunicar dos servlets, vamos que de uno llame a otro. He estado leyendo. buscando informacion y lo unico que he encontrade es algo de RequestDispatcher pero no me funciona. Solo os pido si alguien me puede por favor escribir dos servlets, que uno llame a otro y le pase un parametro( por ejemplo"hola") no se algo muy sencillo pero que me pueda orientar un poco. Muchas gracias!

rockdo
12 de Julio del 2005
Hola Sara!

espero q te sirvan estos ejemplos...
son muy sencillos, el servlet1 manda a llamar al servlet2 y le envia una variable String , y el servlet2 imprime el valor de esa variable...



///////////////servlet1
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;

public class Servlet1 extends HttpServlet
{
public void doGet (HttpServletRequest req, HttpServletResponse res)
throws ServletException, IOException
{
String message = "This is a test";

req.setAttribute("message", message);
RequestDispatcher rd = getServletContext().getRequestDispatcher("/Servlet2");
rd.forward(req, res);
}
}


///////servlet2

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

public class Servlet2 extends HttpServlet
{
public void doGet(HttpServletRequest req,
HttpServletResponse res) throws ServletException,IOException
{
//recupera el mensaje
String msg = (String) req.getAttribute("message");
PrintWriter out = res.getWriter();
out.println("<html><head></head><body>Mensaje<p>"+msg+"</p></body></html>");

}
}