Pasar variable Servlet a Jsp

Victor
13 de Junio del 2005
Hola a todos,
Tengo un problema, quiero pasar una variable de un servlet a un jsp. Todo compila bien pero no me pasa la variable. Este es mi codigo

public void doGet(javax.servlet.http.HttpServletRequest request,javax.servlet.http.HttpServletResponse response)
throws javax.servlet.ServletException, java.io.IOException {
String url="/Proyecto/Anadir.jsp";
request.setAttribute("nombre",nombre);
RequestDispatcher rd = request.getRequestDispatcher(url);
rd.forward(request, response);
}


donde nombre es una String publica declarada en la clase del servlet. No consigo que me envie nada, he probado a enviar otras cadenas y demas...y nada.... si alguien me puede ayudar....

A la hora de recuperar en el jsp hago asi:
<%
String prueba=(String)request.getAttribute("nombre");
%>


osvaldo
13 de Junio del 2005
Pruébalo de la siguiente forma, a mi siempre me ha funcionado sin problemas:

public void doGet(javax.servlet.http.HttpServletRequest request,javax.servlet.http.HttpServletResponse response)
throws javax.servlet.ServletException, java.io.IOException {

String url="/Proyecto/Anadir.jsp";

HttpSession sesion=request.getSession(true);
sesion.setAttribute("nombre",nombre);
RequestDispatcher despachador= getServletContext().getRequestDispatcher(url);
despachador.forward(request,response);

}

espero que te sirva!
osvaldo

Victor
13 de Junio del 2005
Muchas gracias.... Ya me tira, el error debía estar aqui
HttpSession sesion=request.getSession(true);
Como solo lo utilizare una vez, en el jsp una vez utilizado hare un remove de la variable se sesion y listo....
Gracias de nuevo Osvaldo!!



osvaldo
13 de Junio del 2005
Se me olvidó una cosa, en el jsp pon:

Fíjate que la sesión aquí es 'session' con doble s, ya que no es la misma variable 'sesion' definida en el servlet.

<%
String prueba=(String)session.getAttribute("nombre");
%>

nicokiki
13 de Junio del 2005
Hola!!!!!!!!

Eso anda. Pero no es lo recomendado. Por q queres pasar algo por la session si solo lo queres mostrar una sola vez o si solo es porque no pudiste con lo anterior?? Lo recomendable es no "sobrecargar" la session.


Salu2!!!!!!!!!