Beleza galera?
Criei um bean stateless para poder implementar um timerservice
@Stateless
@Remote
@RemoteBinding(jndiBinding="Calculadora")
public class CalculadoraBean implements Calculadora {
/**
*
*/
private static final long serialVersionUID = 7972547251001274659L;
private @Resource TimerService timer;
public long fatorial(int n) {
if (n < 0) throw new IllegalArgumentException();
return n == 0 ? 1 : n * fatorial(n - 1);
}
@PostConstruct
public void schedule(){
long initial = 1000*60*03;
long interval = 1000*60*03;
timer.createTimer(initial, interval);
}
@Timeout
public void timer(Timer timer){
this.fatorial(5);
System.out.println("Horas "+new SimpleDateFormat("hh:MM:ss").format(Calendar.getInstance().getTime()));
}
}
O problema é que quando subo o servidor não há garantia alguma que o método com a anotação @PostConstruct é chamado. Alguém conhece alguma solução
para o container chamar o ejbtimer altomaticamente?