"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.
@Wer_Eb
ist als Principal Consultant und Trainer für die Mathema Software GmbH in Erlangen tätig. Seit 1999 beschäftigt er sich mit verteilten Systemen mit Fokus auf CORBA und Java EE. Sein aktuelles Steckenpferd ist die Entwicklung für mobile Endgeräte und deren Anbindung an Enterprise-Systeme. Neben seiner Projekttätigkeit hält er Technologie-Trainings und ist Autor des Buchs "Enterprise JavaBeans 3.1 – Das EJB-Praxisbuch für Ein- und Umsteiger".
Nikolas May
arbeitet als Consultant für die Mathema Software GmbH. Seit 2008 beschäftigt er sich mit der Entwicklung von Softwarelösungen für Unternehmen. Zusätzlich arbeitet er seit 2013 mit Java EE und unterstützt Kunden bei der Entwicklung von Enterprise-Anwendungen. In seiner Freizeit beschäftigt er sich mit IoT und der Maker-Szene.