Foros del Web » Programación para mayores de 30 ;) » Java »

Redirecionar después de login a web de origen

Estas en el tema de Redirecionar después de login a web de origen en el foro de Java en Foros del Web. Muy buenas. Como bien dice el asunto del post, lo que quiero hacer es eso. Explico la situación. Tengo un filtro que comprueba todas las ...
  #1 (permalink)  
Antiguo 04/05/2009, 02:14
 
Fecha de Ingreso: octubre-2007
Mensajes: 9
Antigüedad: 16 años, 6 meses
Puntos: 0
Redirecionar después de login a web de origen

Muy buenas.

Como bien dice el asunto del post, lo que quiero hacer es eso.
Explico la situación.

Tengo un filtro que comprueba todas las páginas a las que se accede y en caso de no estar el usuario registrado, redirecciona a la página de login.
Cuando el usuario se loguea, predeterminadamente me envia a la página de bienvenida, pero me gustaría que fuese capaz de redireccionar a la página en la que se pidió al usuario que se loguease.

Por poner un ejemplo.
Los administradores recibimos un correo con un URL cada vez que un usuario crea un post nuevo y haciendo click en este queremos ir directamente a dicho post. El problema está en hacer el login y que luego salte a la página deseada.


He probado a introducir un campo oculto en el formulario de login donde le paso el URL anterior o URI.
El problema está en que cuando paso del JSP al Servlet, el Servlet recibe como URL la del jsp, no la anterior al jsp.

¿Alguna idea de como solucionar este problema?.

Un saludo y gracias.
  #2 (permalink)  
Antiguo 04/05/2009, 05:29
 
Fecha de Ingreso: agosto-2008
Mensajes: 57
Antigüedad: 15 años, 8 meses
Puntos: 0
Respuesta: Redirecionar después de login a web de origen

Hola, yo estoy implementando una aplicación y he pensado poner lo mismo que me vendría muy bien para algunas partes. Creo que la mejor forma de hacerlo sería guardarlo como una variable de sesion. puedes guardar siempre la anterior a la anterior pagina en una variable y asi cuando hagas el login redirigir ahi, así cuando hagas el login te redirigirá a la pagina anterior al login.
1 saludo y ya comentaras como lo haces
  #3 (permalink)  
Antiguo 07/05/2009, 01:27
 
Fecha de Ingreso: octubre-2007
Mensajes: 9
Antigüedad: 16 años, 6 meses
Puntos: 0
Respuesta: Redirecionar después de login a web de origen

Esa es la idea que ando tanteando.

El punto donde hay que crear la variable de sesión es en el propio filtro, ya que si no lo hacemos allí, el URL cambiaría por el de /login.jsp.

A la vista no habría mas que comprobar en el servlet "/login" que si el usuario se ha logueado correctamente y existe la variable de sesión, le redireccionemos a dicha URL y eliminamos la variable (para no sobrecargar la página).

Pero... existe un problema con el paso de parámetros.
Si por ejemplo el usuario intenta acceder a "/fichas/mostrarFicha?codigo=2" este parámetro lo habríamos perdido, ya que si guardamos el URI solo guardaría "/fichas/mostrarFicha" y si guardamos el URL completo, al redireccionar machaca las direcciones "*hhp://localhost:8080/*ttp://localhost:8080/fichas/mostrarFicha?codigo=2".

Por lo tanto habría que recuperar dichos parámetros o tratar el URL para eliminar la cabecera.
Tratar los parámetros es inviable pues no sabemos de que página puede venir el usuario, con lo que la opción sería eliminar de la cadena de texto la cabecera.

Me pongo con ello y os comento :)
  #4 (permalink)  
Antiguo 07/05/2009, 08:16
 
Fecha de Ingreso: noviembre-2008
Mensajes: 115
Antigüedad: 15 años, 6 meses
Puntos: 4
Respuesta: Redirecionar después de login a web de origen

No se si te servira, pero tienes un metodo que es getParameterNames() y luego con el nombre, ya puedes obtener el valor como siempre (getParameter(String name)) con lo que podrias volver a montar la cadena
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 15:08.