Cómo eliminar tareas residuales del TimerServide de JBoss
Imaginad que en nuestor poryecto hemos estado usando el TimerService y se han quedado tareas residuales que ya no usamos. Ahora, de forma contínua, recibimos el error siguiente en la consola de JBoss:
[org.jboss.ejb3.timerservice.mk2.task.TimerTask] Error invoking timeout for timer
Para eliminarlo tendremos que ejecutar una vez el código siguiente:
try
{
InitialContext ic = new InitialContext();
SessionContext contextoSesion = (SessionContext) ic.lookup("java:comp/EJBContext");
TimerService timerService = contextoSesion.getTimerService();
for(Timer timer : timerService.getTimers())
{
timer.cancel();
}
}
catch (Exception ex)
{
System.out.println(ex.getMessage());
}
Tras ello habrá que eliminar todo el contenido del directorio ${JBOSS_HOME}/standalone/data/time-service-data y reiniciar JBoss par aplicar los cambios.
Espero que os sea de utilidad. ¡Saludos!
¿Te ha gustado?
¡Suscribete al feed RSS!