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

Variables de Sesion en una JSP (Primera vez)

Estas en el tema de Variables de Sesion en una JSP (Primera vez) en el foro de Java en Foros del Web. Hola! Necesito que me ayuden con esto, voy a hacer un módulo de login, y necesito guardar en una variable de sesion el usuario y ...
  #1 (permalink)  
Antiguo 30/09/2004, 11:51
Avatar de aetrejo  
Fecha de Ingreso: septiembre-2004
Ubicación: Guatemala
Mensajes: 131
Antigüedad: 19 años, 7 meses
Puntos: 0
Pregunta Variables de Sesion en una JSP (Primera vez)

Hola!
Necesito que me ayuden con esto, voy a hacer un módulo de login, y necesito guardar en una variable de sesion el usuario y el proyecto al que corresponde, pero nunca lo he hecho, entonces alguien me dijo que probara esto:

En la primera página:
<%=session.getAttribute("SstrUsuarioActual")%>

En la otra página:
String strUsuarioActual = (String) session.getAttribute("SstrUsuarioActual");

pero no funciona, pues cuando tarato de accesar los valores de las variables en otra página estos llevan null.

Tal vez me podrían indicar otra forma de hacerlo.

Gracias!!!

Nota: Por si esto ayuda estoy utilizando frames.
  #2 (permalink)  
Antiguo 30/09/2004, 12:43
 
Fecha de Ingreso: agosto-2003
Mensajes: 448
Antigüedad: 20 años, 8 meses
Puntos: 1
Parece que no estas asignando el valor a la variable.

session.setAttribute("SstrUsuarioActual", user)

siendo user la variable que queres guardar.
  #3 (permalink)  
Antiguo 30/09/2004, 13:07
Avatar de aetrejo  
Fecha de Ingreso: septiembre-2004
Ubicación: Guatemala
Mensajes: 131
Antigüedad: 19 años, 7 meses
Puntos: 0
Pregunta Variables de sesion en JSP

Se mi olvidó poner esa parte del código, pero si la tengo, y aún así no funciona. Otra cosa que no mencioné y que un compañero me dijo que podía estar ocasionando los problemas es que utilizo un menú hecho con JScript, y que eso podía estar haciendo que las variables se pierda, no sé si es cierto...
Tal vez ustedes me pueden decir algo sobre esto...
Gracias por la ayuda!!!
  #4 (permalink)  
Antiguo 30/09/2004, 13:18
 
Fecha de Ingreso: agosto-2003
Mensajes: 448
Antigüedad: 20 años, 8 meses
Puntos: 1
Sinceramente nunca he usado Frames, de hecho mi experiencia con JSP es muy poca todavía, así que sobre Frames no puedo decir nada.
Lo que a mi me pasó una vez era que la forma que tomaba los datos del Form estaba mal, o sea, el request.getParameter no estaba capturando los datos, así que tuve que poner entre comillas el nombre de los textbox de HTML en el form.
  #5 (permalink)  
Antiguo 30/09/2004, 16:25
Avatar de goncafa  
Fecha de Ingreso: julio-2002
Ubicación: Santiago
Mensajes: 1.211
Antigüedad: 21 años, 10 meses
Puntos: 10
antes de poder guardar o rescatar variables de la session debes en cada pagina que las usaras tener esto

Código PHP:
HttpSession session request.getSession(true); 
El parametro true indica que si no se ha iniciado una sesison se inicia una nueva.

Puedes poner esa linea tanto en los servlets como en las JSP

Saludos
__________________
se despide hasta la proxima
Gonzalo Castillo
  #6 (permalink)  
Antiguo 01/10/2004, 12:06
Avatar de aetrejo  
Fecha de Ingreso: septiembre-2004
Ubicación: Guatemala
Mensajes: 131
Antigüedad: 19 años, 7 meses
Puntos: 0
Pregunta Variables de sesion en JSP

Gracias!!! ya probé eso y tampoco funciona, no sé si el utilizar JScript en el menú que tengo pueda estar ocasionando el problema, un compañero de trabajo me dijo que puede ser que por el JScript que tengo se estén perdiendo las sesiones. Tal vez ustedes saben si puede ser esto o no...
Gracias!!!
  #7 (permalink)  
Antiguo 01/10/2004, 14:18
Avatar de goncafa  
Fecha de Ingreso: julio-2002
Ubicación: Santiago
Mensajes: 1.211
Antigüedad: 21 años, 10 meses
Puntos: 10
Solo una cosa, recuerda que JScript no es lo mismo que JSP, y estos actuan en ambitos diferentes, no es tan simple poder juntar ambos lenguages, de ehcho, no se puede, a lo mucho puedes hacer que una JSP te retorne codigo JScript, o que mediante JSP puedas asignar variables dinamicamente a un JScript, pero al reves es imposible, es decir, nada de JSCript puedes pasarlo a JSP a menos que lo implementes por medio de un formulario o pasar el valor de una variable por la URL y luego capturarla en una JSP y usarla.

Saludos
__________________
se despide hasta la proxima
Gonzalo Castillo
  #8 (permalink)  
Antiguo 01/10/2004, 15:16
Avatar de hugo777  
Fecha de Ingreso: enero-2002
Ubicación: Lima, Perú
Mensajes: 757
Antigüedad: 22 años, 3 meses
Puntos: 1
Hola, en el codigo inicial que pones, se ven bien las asignaciones y obtenciones de tus variables de sesión, que extraño que se te pierdan los valores y recuperes siempre null ???

Sobre JavaScript, pues yo tampoco creo que ese sea el problema, pues como ya se ha comentado son lenguajes diferentes y no se relacionan tan fácilmente...

Sin embargo, prueba una cosa más, en tu primera página JSP pones:

<%
HttpSession objSesion = request.getSession(true);
String user = "USUARIO_X"; //aqui tu identificador de usuario
objSesion.setAttribute("usuario", user );
out.println("Poniendo usuario en sesion ...");
%>


Y
En la segunda página JSP pones:

<%
HttpSession objSesion = request.getSession(false);
String usuario = (String)objSesion.getAttribute("usuario");
out.println("Usuario en sesion: " + usuario);
%>


Eso debería funcionar ... ?
__________________
Saludos,

H@C..
  #9 (permalink)  
Antiguo 05/10/2004, 14:58
Avatar de aetrejo  
Fecha de Ingreso: septiembre-2004
Ubicación: Guatemala
Mensajes: 131
Antigüedad: 19 años, 7 meses
Puntos: 0
Pregunta

No funciona... pero es extraño, porque cuando corro todo sin el menú funciona bien... pero cuando ya utilizo el menú las variables se pierden...
No sé que más probar.... Si alguien puede ayudarme... Gracias!!!
  #10 (permalink)  
Antiguo 05/10/2004, 15:41
Avatar de goncafa  
Fecha de Ingreso: julio-2002
Ubicación: Santiago
Mensajes: 1.211
Antigüedad: 21 años, 10 meses
Puntos: 10
Recuerda que del modo que estas usandel codigo la ID de tu session queda guardada en una Cookie en tu PC y luego JSP la recupera, pero si tienes las Cookies desativadas entonces siempre se te perderan los valores.

Saludos
__________________
se despide hasta la proxima
Gonzalo Castillo
  #11 (permalink)  
Antiguo 14/10/2004, 11:42
Avatar de aetrejo  
Fecha de Ingreso: septiembre-2004
Ubicación: Guatemala
Mensajes: 131
Antigüedad: 19 años, 7 meses
Puntos: 0
Pregunta Sigue el problema con las variables de sesion

Hola!, gracias por su ayuda, pero aún no he solucionado mi problema. Cuando utilizo mis páginas sin el menú (utilizo links para moverme) todo funciona bien, los valores en las varibles de sesión están bien, pero cuando agrego el menú las variables se pierden. No sé qué puede estar causando esto, porque ya todos me dijeron que no es JScript el problema.
Si saben algo que pueda probar... se los agradeceré muchísimo!!!
__________________

Si algo puede fallar... fallará.
  #12 (permalink)  
Antiguo 14/10/2004, 12:45
Avatar de hugo777  
Fecha de Ingreso: enero-2002
Ubicación: Lima, Perú
Mensajes: 757
Antigüedad: 22 años, 3 meses
Puntos: 1
Podrias mostrarnos en código las páginas y html, jsp y servlets que utilizas para tratar de simularlo y ver que pasa...
__________________
Saludos,

H@C..
  #13 (permalink)  
Antiguo 14/10/2004, 12:51
Avatar de goncafa  
Fecha de Ingreso: julio-2002
Ubicación: Santiago
Mensajes: 1.211
Antigüedad: 21 años, 10 meses
Puntos: 10
y no olvides de poner el codigo entre etiquetas de PHP para que este quede coloreado e indentado, de otro modo es un lio tratar de leerte el codigo.

Saludos
__________________
se despide hasta la proxima
Gonzalo Castillo
  #14 (permalink)  
Antiguo 22/11/2004, 11:51
 
Fecha de Ingreso: enero-2004
Ubicación: Distrito Federal
Mensajes: 11
Antigüedad: 20 años, 3 meses
Puntos: 0
Variables de Sesion en una JSP (Primera vez)


yo tambien tuve un problema similar al tuyo, de hecho el java script no es tu problema.

prueba esto a ver si te srive.

tu debes tener declarado tu script de la siguiente manera: <script "javascript">
codigo script
.
.
.
</script>

solo tienes que hacerlo asi:
<script>
codigo script
.
.
.
</script>

yo hice esto y me funciono, quiza a ti tambien te pueda ayudar.

saludos.
  #15 (permalink)  
Antiguo 22/11/2004, 17:05
Avatar de aetrejo  
Fecha de Ingreso: septiembre-2004
Ubicación: Guatemala
Mensajes: 131
Antigüedad: 19 años, 7 meses
Puntos: 0
Hola, pues fijate que lo tengo declarado así:

<script language= "javascript">

voy a probar declarar como dices y te cuento.

Gracias!!!
__________________

Si algo puede fallar... fallará.
  #16 (permalink)  
Antiguo 26/11/2004, 18:47
 
Fecha de Ingreso: noviembre-2004
Ubicación: Oviedo
Mensajes: 99
Antigüedad: 19 años, 5 meses
Puntos: 1
Cita:
Iniciado por aetrejo
En la primera página:
<%=session.getAttribute("SstrUsuarioActual")%>

En la otra página:
String strUsuarioActual = (String) session.getAttribute("SstrUsuarioActual");

Nota: Por si esto ayuda estoy utilizando frames.
Estás siempre recogiendo el atributo de la session, no veo que nunca añadas ese atributo en la sesion del usuario. Tendrías que declarar en la primera pagina esto:
session.setAttribute("SstrUsuarioActual", valor);

Asi en la otra página ya podrias recojer el valor que has metido.

Si los frames que usas se encuentran dentro de tu aplicación WEB no hay problema. El problema viene si para algun frame utilizas alguna pagina de fuera de tu aplicacion WEB. La sesion de usuario tiene limite de aplicacion WEB.
  #17 (permalink)  
Antiguo 02/07/2008, 08:17
 
Fecha de Ingreso: julio-2008
Mensajes: 1
Antigüedad: 15 años, 10 meses
Puntos: 0
Respuesta: Variables de Sesion en una JSP (Primera vez)

no deberias hacer eso en el servlet?

Bueno, yo utilizo JSP pero con Struts, es mas limpio poner las sesiones en la clase de java y no directamente en la página. Para ello utilizas la clase HttpSesion

En cada página preguntas por la sesión:

if (!HttpSessionManager.isSession(request)) {
return(mapping.findForward("sessionExpired"));
}

Creo una clase HttpSessionManager que tiene los siguientes metodos:

public static void activeTime(HttpServletRequest request,
HttpServletResponse response,int tiempo){
HttpSession session = request.getSession(true);
session.setMaxInactiveInterval(tiempo);
}

public static void login(HttpServletRequest request,
HttpServletResponse response, Form form) {

HttpSession session = request.getSession(true);
session.setAttribute("username"form);
}

Por ultimo en la clase login, llamo a esos 2 metodos con el bean correspondiente:

HttpSessionManager.activeTime(request, response, 9*60*60);

HttpSessionManager.login(request, response, form);
HttpSession session = request.getSession(true);
request.setAttribute("user", session.getAttribute("username"));
  #18 (permalink)  
Antiguo 02/07/2008, 17:05
 
Fecha de Ingreso: julio-2008
Mensajes: 1
Antigüedad: 15 años, 10 meses
Puntos: 0
Respuesta: Variables de Sesion en una JSP (Primera vez)

hola yo tengo un poco de experiencia y lo promero que se hacer es un login,despues una pagina de verificar y despues la pagina a donde quieres que te mande la de login nda mas pones el formulario no se necesita nadanden jsp solo que en le fuction debe ser asi
< form fuction="verifica.jsp">para que lea la pagina y verifica debe contener el siguiente codigo
<%
/**
*Conexion a la base de dtaos
*/
String mensaje="";
String datos="";
Class.forName("com.mysql.jdbc.Driver");
java.sql.Connection conexion;
try
{
conexion = DriverManager.getConnection("jdbc:mysql://localhost/bdm","root","");
mensaje="Conexcion realizada satisfactoriasmentes";
java.sql.Statement query;
query= conexion.createStatement();
java.sql.ResultSet tabla;
tabla=query.executeQuery("select * from clientes where nombre='"+request.getParameter("Usuario")+
"' and pwd='"+ request.getParameter("PWD")+"'");
if(tabla.next())
{
String id=tabla.getObject("id_Cliente").toString();
String nombre=request.getParameter("Usuario");
String rol=tabla.getObject("rol").toString();
session.setAttribute("Usuario",nombre);
session.setAttribute("id",id);
session.setAttribute("rol",rol);

if(rol.compareTo("1")==0)
{

if(request.getParameter("voy")!=null)
{
response.sendRedirect("Pedir.jsp");
}
else
response.sendRedirect("UsMenu.jsp");
}
else
response.sendRedirect("AdminMenu.jsp");

}
else
response.sendRedirect("Login.jsp?error=Password invalido "+ request.getParameter("Usuario"));
}

catch(Exception e)
{
%>
El error fue <%=e.getMessage()%>

<%
}
%>
espero que te sirva
  #19 (permalink)  
Antiguo 30/12/2008, 13:30
 
Fecha de Ingreso: diciembre-2008
Mensajes: 1
Antigüedad: 15 años, 4 meses
Puntos: 0
Respuesta: Variables de Sesion en una JSP (Primera vez)

Hola que tal, hace tiempo tuve un problema con variables de sesion el cual era que tenia una pagina que generaba variables de sesion, pero esta pagina estaba dentro de un iframe, pero las variables se me perdian o como en este caso siempre eran nulas,

Esto se debe a que el IIS si es que lo estas ocupando, no puede interpretar dichas variables si se encuentran en diferentes dominios el menu y tu pagina.

La que yo hize es poner todo en el mismo dominio, tanto el menu y la pagina que estaba en mi iframe.

Espero te sea de ayuda
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 03:45.