# JEE6: Generische Tasks an zentralem Scheduler registrieren



## t3_chris (21. Feb 2011)

Hallo!

Ich baue gerade eine JavaEE 6 Application auf Glassfish 3.01, welche grundsätzlich folgende Funktionalität bieten soll. Ein zentraler Singleton übernimmt die Aufgabe eines Schedulers. Das heißt, dieser Singleton prüft zu jeder Minute eine Liste von Tasks und fragt diese, ob sie ausgeführt werden wollen oder nicht (die Tasks wissen das anhand einer internen Logik). Soweit so gut. 

Nun suche ich nach einem Pattern, welches mir eine Möglichkeit bietet, diese Tasks am zentralen Scheduler zu registrieren (dieser trägt sie dann in eine Liste ein und schaut wie oben beschrieben jede Minute mal nach den Wünschen der Tasks). 
Der für mich einfachste Ansatz wäre nun, alle Tasks mit 
	
	
	
	





```
@Singleton
```
 zu annotieren und diese in einer 
	
	
	
	





```
@PostConstruct
```
 Methode die Registrierung am Scheduler durchführen zu lassen. Das läuft grundsätzlich gut - allerdings nur so lange bis einer dieser Task und damit der Singleton mit einer entsprechenden Exception stirbt. 

Ich hätte nun also gerne einen neuen Ansatz mit dem ich 
	
	
	
	





```
@Stateless
```
 Session Beans oder was ähnliches geeignetes an meinem Scheduler registrieren kann. Ich hätte nur gerne eine etwas elegantere Methode als den direkten Aufruf mit z.B.


```
@EJB
TaskLocal task1;

@EJB
OtherTaskLocal task2;

private List<Task> scheduleList;

@PostConstruct
private void init() {
   scheduleList = new ...
   scheduleList.add(task1);
   scheduleList.add(task2);
}
```

Die Lösung sollte also einen neuen Task registrieren können, ohne dass dazu jedes mal der Scheduler verändert werden muss.
Wie würdet ihr das lösen? 

Vielen Dank im Voraus für Eure Inspiration!

Best Grüße,

t3chris


----------



## FArt (22. Feb 2011)

glassfish scheduler - Google-Suche
How to Create a Scheduler Module in a Java EE 6 Application with TimerService | NetBeans Zone


----------



## JohannisderKaeufer (24. Feb 2011)

Hallo,

hast du schon mal über Messaging nachgedacht?

Könnte man deinen Anwendungsfall eventuell so konstruieren das es mit JMS gelöst werden kann.


----------



## t3_chris (25. Feb 2011)

Grundsätzlich ja, aber wie bewege ich die Beans, welche die Tasks implementieren dazu sich per Nachricht am Scheduler zu registrieren?


----------



## t3_chris (25. Feb 2011)

FArt hat gesagt.:


> How to Create a Scheduler Module in a Java EE 6 Application with TimerService | NetBeans Zone



Danke, Google habe ich natürlich bemüht, nur dabei dieses Dokument nicht gefunden...


----------



## FArt (25. Feb 2011)

t3_chris hat gesagt.:


> Danke, Google habe ich natürlich bemüht, nur dabei dieses Dokument nicht gefunden...



Sorry, aber das ist mir völlig unverständlich. ???:L
Die Suchbegriffe sind aus deinem Post, nämlich "Scheduler" und "Glassfish" und das ist der (derzeit) sechste Treffer, sogar mit einer prominenten Überschrift.. man muss also nur die Ergebnisse überfliegen ...  :autsch:


----------

