# Zeitgesteuertes Ereignis in einer dynamic web module Anwendung (eclipse)



## metalfan (5. Jan 2018)

Hallo,


in einer JSF 2 Anwendung hätte ich gerne jede x Minuten eine Methode aufgerufen ohne das dies den Glassfish Server zum erliegen bringt.

Und siehe da, es gibt eine Lösung mit Beispiel:
www.hascode.com/2012/06/task-scheduling-in-java-ee-6-on-glassfish-using-the-timer-service/

1) Eclipse weigert sich unter "Properties -> Project Facet" EJB und dynamic web module gleichzeitig zu aktivieren...
Im Beispiel kommt ja @EJB vor aber es ist auch von glassfish die Rede und irgendwie verbinde ich glassfish mit "Webseiten". Liege ich da Falsch?


2) Also erstmal habe ich die @EJB Zeile entfernt und es so umgewandelt:

```
import javax.ejb.Schedule;
import javax.ejb.Singleton;

@Singleton
public class TimerService {
   

    @Schedule(second="*/1", minute="*",hour="*", persistent=false)
    public void doWork(){
        System.out.println("timer: ");
    }
}
```

Ein Starten des Projektes gibt die Meldung:

```
An error has occurred. See error log for more details.
org.eclipse.jst.javaee.ejb.internal.impl.EJBJarImpl cannot be cast to org.eclipse.jst.javaee.web.WebApp
```

aus.
Das Projekt wurde als Dynamic Web Module erstellt....Warum will Java casten?


----------



## Manuel.R (9. Jan 2018)

Heißt das, das Project ist ein web module?

meines wissens nach funktioniert dann auch ein ejb. Die Annotationen werden von den entsprechenden Container im Server interpretiert. Das web-modul wird in den servlet-container geladen.


----------



## Manuel.R (9. Jan 2018)

du musst dein Projekt auf eine enterprise-Anwendung umstellen.


----------



## thecain (9. Jan 2018)

metalfan hat gesagt.:


> Im Beispiel kommt ja @EJB vor aber es ist auch von glassfish die Rede und irgendwie verbinde ich glassfish mit "Webseiten". Liege ich da Falsch?


Ja, GlassFish ist einfach ein Application Server


----------

