Foro de elhacker.net

Programación => Java => Mensaje iniciado por: panaka en 12 Diciembre 2009, 23:03 pm



Título: Servlet, como enviar a otra pagina directamente.
Publicado por: panaka en 12 Diciembre 2009, 23:03 pm
Buenas tengo un problemilla, programo en JAVA una serie de Servlet, uno de ellos es una formulario de autentificacion que nos redirige a otro servlet en el cual extraigo los datos del servlet de autentificacion, comparo y si coincide voy a otro servlet y si no regreso a autentificacion.Tengo dos dudas, puedo saber dentro de un mismo Servlet las variables que me han introducido en su propio formulario? Como no se hacerlo redirijo al citado 2º servlet en el cual analizo extrayendo las variable nombre y pass, el problema que tengo de esta forma es como puedo ahora redirigir automaticamente a un 3º Servlet??

Se programar en Java pero de HTML como veis voy muy perdido.

Gracias
Un saludo


Título: Re: Servlet, como enviar a otra pagina directamente.
Publicado por: freeday en 19 Diciembre 2009, 16:29 pm
yo estoy igual que tu. con idea de java pero poca de html.pero te aconsejaria que crearas el formulario en html con un voton validar otro que cuando le des click te llame al servlet que valide los datos y si no existen que te mande al mismo html pero con una notificacion y ya.


Título: Re: Servlet, como enviar a otra pagina directamente.
Publicado por: mayofunk en 25 Diciembre 2009, 20:20 pm
Me da la impresion de que puedes, en el segundo Servlet,  analizar los datos y redirigir automaticamente con :

Código:
                        <jsp:forward page="miOtraPagina.jsp">
      <jsp:param name="parametro1" value="parametroCualquiera" />
      <jsp:param name="paraNameUser" value="juanito" />
</jsp:forward>

Estas etiquetas jsp, van en el codigo html directo, es decir, si es que estas dentro de un bloque de codigo deberias quebrarlo asi:
Código:
if(datosOk)
  {
                        %>
                        <jsp:forward page="miOtraPagina.jsp">
      <jsp:param name="parametro1" value="parametroCualquiera" />
      <jsp:param name="paraNameUser" value="juanito" />
</jsp:forward>
                        <%
}
else
{
....
}

Y como anexo, la forma de rescatar estos parametros desde las pagina siguiente a la cual fowardie es asi.

Código:
<%
String priv = request.getParameter("parametro1");
String username = request.getParameter("paraNameUser");
%>

Salu2.


Título: Re: Servlet, como enviar a otra pagina directamente.
Publicado por: panaka en 27 Diciembre 2009, 14:51 pm
Gracias por contestar, lo que me has puesto es lo que al final use, el problema era el concepto de servlet, el cual por definicion nos impide acceder a los datos antes de enviar el formulario.
Al final lo solucione de la siguiente forma:
Entro user y pass me voy al otro servelt en el cual extraigo los datos tal y como pusiste, que coinciden muestro la pagina del menu, etc que son erroneos muestro pagina de error y redirecciono a el inicio de sesion.

Ya te digo que la uncia forma que he encontrado de acceder a los datos sin llamar a otro servlet es usar un XML de transito en el que almaceno los datos, pero para este caso no me parecia eficiente.

Un saludo