Ver Mensaje Individual
  #6 (permalink)  
Antiguo 04/04/2011, 03:53
moisesvs
 
Fecha de Ingreso: junio-2009
Mensajes: 65
Antigüedad: 15 años
Puntos: 0
Respuesta: Servlet de larga duración

Hola de nuevas, muchas gracias por las respuestas de los dos.

dackiller: No veo tanto un problema de concurrencia como tu lo ves, creo que ese problema ya lo tengo solucionado, y quizás la solución que propone epilefreyes sea válida, aún así pienso que en la HashMap si que podría existir ese tipo de problemas.

Por otro lado comentarte que el ServletListener según he estado viendo solamente puedo capturar lo siguiente eventos, y por lo tanto ponerme a escuchar estos eventos:

servlet context events (ServletContextListener):

servlet context attribute events (ServletContextAttributeListener):

session events (HttpSessionListener):

session attribute events (HttpSessionAttributeListener):

Quizás me equivoque pero de esa manera creo que no me servirá de mucho.

epilefreyes: Muchas gracias por tu código y por tu tiempo, creo que en la HashMap deberías de colocar un synchronized para evitar la concurrencia de otro procesos, quería preguntar acerca de AtomicInteger que has utilizado, he estado buscando y parece que a parte de la API hay poca documentación, que hace la clase exactamente, te da un ¿número aleatorio? o evita problemas de concurrencia sumándole 1 al contador.

Por otro lado quería comentarte que lo único que quiero mostrar al usuario es lo siguiente, cuando el usuario haga la petición mostrarle.

Se esta realizando su operación, espere unos segundos...

En la misma página más abajo mostrarle.

Se esta realizando su operación, espere unos segundos...

Operación realizada con éxito.

Lo de operación realizada con éxito he pensado que sea una capa que sea rellenada por medio de Ajax, y que yo sepa Ajax no realiza peticiones repetitivamente, si no que tienes que establecerselo tú por medio de Timer cada 5 segundos, por ejemplo he pensado en establecerlo con JQuery un Timer a Ajax para que me rellene cuando la operación halla terminado, mal o bien.

La petición de Ajax sería con un HTTPRequest a la dirección concatenada con el token, el problema que veo es cada cuánto es recomendable realizar la petición de Ajax... cada 5 segundos... 3...

Muchas gracias a ver si me podéis aclarar las dudas.
Saludos!