Lifecycle-Events der CDI-Scopes

Beim Aktivieren und Deaktivieren von CDI-Scopes sendet der Container Events, die von der Anwendung bspw. zur Initialisierung genutzt werden können. Die Events sind Objekte, die mit dem Qualifier @Initialized(XyzScoped.class) bzw. @Destroyed(XyzScoped.class) qualifiziert sind.

So könnte der folgende Code verwendet werden, um nach dem Start bzw. Deployment der Anwendung Code auszuführen:

public class AppInit {
  private void doSomething(@Observes @Initialized(ApplicationScoped.class) Object event) {
    ...
  }
}

Es ist allerdings zu berücksichtigen, dass zum Zeitpunkt der Methodenausführung noch nicht alle Kontexte aktiv sind. Im Beispiel oben wurde ja gerade der Application Scope gestartet, was noch lange nicht bedeutet, dass auch bspw. der Request Scope schon aktiviert wurde.

Advertisements

Über Dirk Weil
Dirk Weil ist seit 1998 als Berater im Bereich Java tätig. Als Geschäftsführer der GEDOPLAN GmbH in Bielefeld ist er für die Konzeption und Realisierung von Informationssystemen auf Basis von Java EE verantwortlich. Seine langjährige Erfahrung in der Entwicklung anspruchsvoller Unternehmenslösungen machen ihn zu einem kompetenten Ansprechpartner und anerkannten Experten auf dem Gebiet Java EE. Er ist Autor in Fachmagazinen, hält Vorträge und leitet Seminare und Workshops aus einem eigenen Java-Curriculum.

Kommentar verfassen

Trage deine Daten unten ein oder klicke ein Icon um dich einzuloggen:

WordPress.com-Logo

Du kommentierst mit Deinem WordPress.com-Konto. Abmelden / Ändern )

Twitter-Bild

Du kommentierst mit Deinem Twitter-Konto. Abmelden / Ändern )

Facebook-Foto

Du kommentierst mit Deinem Facebook-Konto. Abmelden / Ändern )

Google+ Foto

Du kommentierst mit Deinem Google+-Konto. Abmelden / Ändern )

Verbinde mit %s

%d Bloggern gefällt das: