Machst du schon CDI oder injectest du noch?
"Ja, wir machen auch CDI." Diesen Satz hört man inzwischen in immer mehr Java-EE-Projekten – eine erfreuliche Entwicklung. Doch auf die Frage, was genau von CDI verwendet wird, kommt meist die Antwort: "Dependency Injection & Scopes". Doch Contexts and Dependency Injection ist mehr als das!
Der Workshop stellt anhand praktischer Beispiele die Grundkonzepte von CDI vor und behandelt dabei Features wie Stereotypen, Alternativen, Interceptoren und Events. Zusätzlich werden die deklarativen TX-Steuerung und die Erweiterung des Frameworks mit eigenen Extensions vorgestellt. All das kann am eigenen Rechner nachvollzogen und somit selbst ausprobiert werden, was mit CDI jenseits von @Inject und @xxxScoped alles möglich ist.
TECHNISCHE ANFORDERUNGEN
Die Teilnehmer benötigen einen Laptop mit aktueller Hardwareausstattung. Als Betriebssysteme sind Windows, Linux und Mac OS geeignet, wobei die Teilnehmer ihr Betriebssystem soweit beherrschen sollten, um Software zu installieren und Serverinstallationen zu starten. Tablets sind für die Übungen nicht geeignet. Darüber hinaus sollten die Teilnehmer die Administrator-Rechte auf ihren Rechnern haben, sowie speziell die Möglichkeit die Netzwerkeinstellungen anzupassen und auf die USB Schnittstellen zuzugreifen.
Folgende Hardwarevoraussetzungen sollten gegeben sein:
- Windows/Linux/MacOS mit Administratorrechte
- min. 4 besser 8 GB RAM
- 1GB freier Festplattenplatz
Folgende Installationen sollten vorhanden sein:
- Java Development Kit 8 akt. Update (JDK, nicht nur ein JRE ,) )
- Wildfly 10
- IDE der Wahl (empfohlen: aktuellste eclipse JEE edition)
- Maven 3
- Zip-Archiver (winzip, gzip, o.ä)
- Acrobat Reader
- Firefox / Chrome
AGENDA
ab 9:00 Registrierung und Begrüßungskaffee
9:40: Beginn
* Begrüßung
* Motivation
* CDI Grundlagen
* Aufbau der Umgebung (1. Übung)
10:50 - 11:00: Vormittagskaffeepause
* Producer & Stereotypes
* Injections & Qualifier
* Alternativen
* 2. Übung
12:30 - 13:30: Mittagspause
* Interceptoren
* TX-Hanlding
* Events
* 3. Übung
15:10 - 15:20: Nachmittagskaffeepause
* CDI Extensions
* 4. Übung
16:50 - 17:00: kleine Kaffeepause
* Zusammenfassung
* Zeit zum Spielen
* Fragen und Antworten
ca. 18:30: Ende
Vorkenntnisse
* Gute Java-Kenntnisse sind zwingend notwendig.
* Grundlegende Kenntnisse von Java EE sind von Vorteil.
Lernziele
Der Teilnehmer erhält einen Eintagesrundflug durch die Features des CDI-Standards. An ausgewählten Beispielen kann er diese am eigenen Rechner nachvollziehen und bekommt damit einen direkten Einblick, was mit dem eigentlich gar nicht mehr so neuen leichtgewichtigen Komponentenstandard jenseits von @Inject und @xxxScoped alles möglich ist. Damit erhält er die Möglichkeit, auch die oft weniger bekannten Features des CDI-Standards kennen zu lernen und ihn damit optimal im eigenen Projekt zu nutzen.