Ich mag würde versuchen, die @Schedule Anmerkung in folgender Weise zu verwenden:@Schedule Anmerkung alle paar Minuten (oder Sekunden) laufen
public class MyTestServlet extends HttpServlet {
private static JcanLogger LOG = JcanLoggerFactory.getLogger(ServiceTestServlet.class);
@EJB CronService cronService;
public void service(HttpServletRequest req, HttpServletResponse resp) throws .... {
....
cronService.iLive();
}
---
@Local // because the ejb is in a servlet (there is no other jvm)
public interface CronService {
public void iLive();
public void runsEveryMinute();
}
---
@Singleton
public class CronServiceBean implements CronService {
private static final JcanLogger LOG = JcanLoggerFactory.getLogger(CronServiceBean.class);
@Schedule(minute="*")
public void runsEveryMinute() {
LOG.info(" runs EveryMinute ");
}
public void iLive() {
LOG.info("iLive");
}
---
LOG
...
CronServiceBean:34 ] iLive
auf dem Protokoll Basierend, die CronService leben und gut, aber die geplante Aufgabe 'runsEveryMinute' funktioniert nicht.
Wie soll es mit einer geplanten EJB-Aufgabe funktionieren?