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

Registrar fecha y hora de salida de usuario aun cuando solo cierre el navegador

Estas en el tema de Registrar fecha y hora de salida de usuario aun cuando solo cierre el navegador en el foro de Java en Foros del Web. Hola EStoy trabajando un una tabla que registra la fecha y hora en que el usuario entra al sistema y la fecha y hora en ...
  #1 (permalink)  
Antiguo 18/02/2012, 23:15
 
Fecha de Ingreso: enero-2012
Mensajes: 23
Antigüedad: 12 años, 3 meses
Puntos: 0
Pregunta Registrar fecha y hora de salida de usuario aun cuando solo cierre el navegador

Hola
EStoy trabajando un una tabla que registra la fecha y hora en que el usuario entra al sistema y la fecha y hora en que el usuario sale del sistema asimismo determino el tiempo que se estuvo en la sesion en mi aplicacion.
Ahora el otro desafio que quisiera me ayudaran a darme una idea de como poder hacerlo es.
Cuando el usuario cierre el navegador sin dar clic en el boton de salir del sistema no puedo obtener la fecha y hora ya que el usuario no inicia el evento de cierre desde la aplicacion en si.
Como pudiera hacerlo???
Mi aplicacion esta hecha en java jsp/servlet y tomcat
  #2 (permalink)  
Antiguo 19/02/2012, 14:39
 
Fecha de Ingreso: agosto-2011
Ubicación: Madrid
Mensajes: 185
Antigüedad: 12 años, 7 meses
Puntos: 29
Respuesta: Registrar fecha y hora de salida de usuario aun cuando solo cierre el nave

Puedes echarle un vistazo a la clase Window: http://docs.oracle.com/javase/1.4.2/...wt/Window.html

Para GWT uso: addWindowCloseListener(WindowCloseListener listener)
  #3 (permalink)  
Antiguo 19/02/2012, 16:28
 
Fecha de Ingreso: enero-2012
Mensajes: 23
Antigüedad: 12 años, 3 meses
Puntos: 0
Respuesta: Registrar fecha y hora de salida de usuario aun cuando solo cierre el nave

Si gracias ya le eche un vistazo a lo q me envias y pues entiendo q esa clase sirve para detectar el evento de cerrar el navegador pero veras yo soy novato en java y me gustaris si pudieras orientarme mas con algun ejemplo.
Porque nose como debo hacer para llamar a la clase y ejecute mi sentencia sql hacia el mysql y me registre lo q yate comentaba.
Donde debo crear la clase Window y como haria desde mi jsp para que pueda ejecutarse ese evento, ando perdido en esos puntos si pudieras aclararme mas y con un ejemplo mas especificadamente. porfa
  #4 (permalink)  
Antiguo 19/02/2012, 17:36
 
Fecha de Ingreso: agosto-2011
Ubicación: Madrid
Mensajes: 185
Antigüedad: 12 años, 7 meses
Puntos: 29
Respuesta: Registrar fecha y hora de salida de usuario aun cuando solo cierre el nave

No he trabajado nunca con jsf así que por esa parte no puedo ayudarte. En GWT lo llamo como un método estático de la clase Window, en la página que quiero saber si es cerrada:

Window.addWindowCloseListener(...);
  #5 (permalink)  
Antiguo 19/02/2012, 17:37
 
Fecha de Ingreso: agosto-2011
Ubicación: Madrid
Mensajes: 185
Antigüedad: 12 años, 7 meses
Puntos: 29
Respuesta: Registrar fecha y hora de salida de usuario aun cuando solo cierre el nave

Se me olvidó comentarte que no tienes que crear la clase Window, sino importarla ya que es una clase ya definida. Es como cuando en java quieres crear un ArrayList y tienes que importarlo desde java.util
  #6 (permalink)  
Antiguo 20/02/2012, 02:42
Avatar de Fuzzylog  
Fecha de Ingreso: agosto-2008
Ubicación: En internet
Mensajes: 2.511
Antigüedad: 15 años, 7 meses
Puntos: 188
Respuesta: Registrar fecha y hora de salida de usuario aun cuando solo cierre el nave

Hasta donde sé, en GWT programas en java y cuando haces refresh se autogenera como ajax, que es en definitiva javascript. Para algo que no sea GWT, y teniendo en cuenta que es una aplicación web, esa funcionalidad tendría que hacerla como javascript, no como java, ya que afecta al navegador (cliente), no al servidor.
__________________
if (fuzzy && smooth) {
fuzzylog = "c00l";
return true;
}
  #7 (permalink)  
Antiguo 20/02/2012, 04:13
 
Fecha de Ingreso: agosto-2011
Ubicación: Madrid
Mensajes: 185
Antigüedad: 12 años, 7 meses
Puntos: 29
Respuesta: Registrar fecha y hora de salida de usuario aun cuando solo cierre el nave

Cita:
Iniciado por Fuzzylog Ver Mensaje
Hasta donde sé, en GWT programas en java y cuando haces refresh se autogenera como ajax, que es en definitiva javascript. Para algo que no sea GWT, y teniendo en cuenta que es una aplicación web, esa funcionalidad tendría que hacerla como javascript, no como java, ya que afecta al navegador (cliente), no al servidor.
Es verdad, puedes que tengas razón con eso. No había caído en lo de javascript.
  #8 (permalink)  
Antiguo 23/02/2012, 00:46
 
Fecha de Ingreso: enero-2012
Mensajes: 23
Antigüedad: 12 años, 3 meses
Puntos: 0
Respuesta: Registrar fecha y hora de salida de usuario aun cuando solo cierre el nave

Pero lo que yo quiero es q cuando cierre el navegador siempre se ejecute el codigo donde hago el UPDATE a la tabla loginout para determinar fecha-hora de salida y duracion de sesion
  #9 (permalink)  
Antiguo 23/02/2012, 02:08
 
Fecha de Ingreso: agosto-2011
Ubicación: Madrid
Mensajes: 185
Antigüedad: 12 años, 7 meses
Puntos: 29
Respuesta: Registrar fecha y hora de salida de usuario aun cuando solo cierre el nave

Cita:
Iniciado por javahierro Ver Mensaje
Pero lo que yo quiero es q cuando cierre el navegador siempre se ejecute el codigo donde hago el UPDATE a la tabla loginout para determinar fecha-hora de salida y duracion de sesion
Por qué uno utilizas un framework que te permita tener un control más exhaustivo sobre la sesión?
  #10 (permalink)  
Antiguo 23/02/2012, 02:24
Avatar de Fuzzylog  
Fecha de Ingreso: agosto-2008
Ubicación: En internet
Mensajes: 2.511
Antigüedad: 15 años, 7 meses
Puntos: 188
Respuesta: Registrar fecha y hora de salida de usuario aun cuando solo cierre el nave

Bueno. Tienes un par de problemas.

Lo que he visto de JS indica que si bien algunos navegadores pueden responder al evento Window.onClose() no lo hacen todos ellos.

Además estaría el onUnload del body (que cambie de pagina web sin cerrar el navegador), pero esto es incompatible con el refresh de la página en cuestión, por lo que para estas cosas solo valdrían páginas ajax.

¿Las mejores opciones?

1º Que el programa envie ping cada minuto y se detecte si no hay respuesta en un periodo prudente (2 a 5 minutos) y entonces se haría el update.

2º Tras un tiempo de inactividad de una sesión X se da por cerrada, eso se configuraría fácil, y es lo que más se utiliza. Normalmente los tiempos pueden ir desde los 5 minutos a 1h, eso depende del uso normal de la aplicación web.
__________________
if (fuzzy && smooth) {
fuzzylog = "c00l";
return true;
}
  #11 (permalink)  
Antiguo 23/02/2012, 10:04
 
Fecha de Ingreso: enero-2012
Mensajes: 23
Antigüedad: 12 años, 3 meses
Puntos: 0
Respuesta: Registrar fecha y hora de salida de usuario aun cuando solo cierre el nave

A mi me parece que la idea del evento close de la clase listener que sugirio un usuario seria bastante buena pero el problema q no se como se utiliza esa dicha clase, si alguien pudiera ayudarme
  #12 (permalink)  
Antiguo 23/02/2012, 10:06
 
Fecha de Ingreso: enero-2012
Mensajes: 23
Antigüedad: 12 años, 3 meses
Puntos: 0
Respuesta: Registrar fecha y hora de salida de usuario aun cuando solo cierre el nave

Si alguien pudiera compartirme algun segmento de codigo ejemplificandome la idea se lo agradeceria muchoo
  #13 (permalink)  
Antiguo 23/02/2012, 11:22
Avatar de Fuzzylog  
Fecha de Ingreso: agosto-2008
Ubicación: En internet
Mensajes: 2.511
Antigüedad: 15 años, 7 meses
Puntos: 188
Respuesta: Registrar fecha y hora de salida de usuario aun cuando solo cierre el nave

¿estarías dispuesto a migrar todo tu proyecto entero a uno de GWT [ajax] solo para implementar una funcionalidad?
__________________
if (fuzzy && smooth) {
fuzzylog = "c00l";
return true;
}
  #14 (permalink)  
Antiguo 23/02/2012, 23:19
 
Fecha de Ingreso: enero-2012
Mensajes: 23
Antigüedad: 12 años, 3 meses
Puntos: 0
Respuesta: Registrar fecha y hora de salida de usuario aun cuando solo cierre el nave

Pero es q no he dicho que yo debo modificar mi proyecto a otra tecnologia solo pido un ejemplo sobre la clase Listener sobre el evento close de la ventana eso es todo
  #15 (permalink)  
Antiguo 23/02/2012, 23:21
 
Fecha de Ingreso: enero-2012
Mensajes: 23
Antigüedad: 12 años, 3 meses
Puntos: 0
Respuesta: Registrar fecha y hora de salida de usuario aun cuando solo cierre el nave

Cita:
Iniciado por jav_000 Ver Mensaje
No he trabajado nunca con jsf así que por esa parte no puedo ayudarte. En GWT lo llamo como un método estático de la clase Window, en la página que quiero saber si es cerrada:

Window.addWindowCloseListener(...);
Pudieras compartir esas clases y poder tener un idea mas clara sobre esos metodos y clases ? aunq sea en una tecnologia diferente de jsp
  #16 (permalink)  
Antiguo 24/02/2012, 03:17
Avatar de Fuzzylog  
Fecha de Ingreso: agosto-2008
Ubicación: En internet
Mensajes: 2.511
Antigüedad: 15 años, 7 meses
Puntos: 188
Respuesta: Registrar fecha y hora de salida de usuario aun cuando solo cierre el nave

http://examples.roughian.com/index.h...wCloseListener

Ahi tienes el ejemplo, pero no te va a servir de nada porque necesitas que la aplicación sea gwt. La otra opción que tienes es implementarla en javascript.

Por otra parte, el código JS que genera gwt está ofuscado para que la gente no se pase de lista y pueda trampear la web.

Así que te queda investigar...

http://www.google.es/#sclient=psy-ab...w=1280&bih=885
__________________
if (fuzzy && smooth) {
fuzzylog = "c00l";
return true;
}

Etiquetas: login, logout, sesión
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 16:29.