estoy recibiendo esta excepción en mi servidor Tomcat (+ liferay)¿Cuál podría ser la causa de RejectedExecutionException
java.util.concurrent.RejectedExecutionException
mi clase es así:
public class SingleExecutor extends ThreadPoolExecutor {
public SingleExecutor(){
super(1, 1,0L, TimeUnit.MILLISECONDS,new LinkedBlockingQueue<Runnable>());
}
@Override
public void execute(Runnable command) {
if(command instanceof AccessLogInsert){
AccessLogInsert ali = (AccessLogInsert)command;
ali.setConn(conn);
ali.setPs(ps);
}
super.execute(command);
}
}
me sale esta excepción en la línea super.execute(command);
Este error puede ocurrir cuando la cola está llena pero el tamaño LinkedBlockingQueue
es 2^31, y estoy seguro de que no hay tantos comandos en espera.
Al inicio todo es estable, pero después de volver a desplegar una guerra, comienza a ocurrir. Esta clase no es parte de la guerra sino en un jar en tomcat/lib.
¿Tiene alguna idea de por qué sucedió esto y cómo solucionarlo?
Última parte de la respuesta es buena. –