Überblick
Java Server Faces, kurz JSF, ist das Standardframework der Java Enterprise Edition (Jakarta EE) für die Entwicklung grafischer Benutzeroberflächen in Web-Applikationen. Dieser Kurs vermittelt Java-Entwicklern, die bereits Erfahrungen mit Java EE besitzen, das Wissen und die praktischen Fertigkeiten, um komponentenbasierte Web-Frontends mit JSF zu erstellen und in bestehende Enterprise-Architekturen zu integrieren. Sie lernen, wie JSF-Seiten mit H-Tags, F-Tags und UI-Tags aufgebaut werden, wie Context and Dependency Injection (CDI) für eine saubere Schichtentrennung eingesetzt wird und welche Komponentenbibliotheken in der Praxis verbreitet sind. JSF ist seit Jahren Teil des Jakarta-EE-Standards und begegnet Entwicklern in zahlreichen Bestandssystemen und neuen Enterprise-Projekten. Das Wissen aus diesem Kurs ist daher praxisrelevant und direkt auf reale Projekte übertragbar.
Kursinhalte & Lernziele
Das erste Modul führt in die JSF-Architektur und die verwendeten Tag-Bibliotheken ein. JSF nutzt Facelets als Seitenbeschreibungssprache und stellt mehrere Standard-Tag-Bibliotheken bereit, die für unterschiedliche Aufgaben zuständig sind. In diesem Block erarbeiten Sie die Grundstruktur einer JSF-Seite und den korrekten Einsatz der Tags.
- JSF-Seitenlebenszyklus (Restore View bis Render Response)
- H-Tags: HTML-Komponenten wie Formulare, Tabellen, Links und Buttons
- F-Tags: Core-Tags für Validierung, Konvertierung und Events
- UI-Tags: Facelets-Tags für Templating, Komposition und Includes
- Expression Language (EL) für Datenbindung
- Grundstruktur einer Facelets-Seite
Das zweite Modul behandelt Managed Beans und Context and Dependency Injection. Das CDI-Modell ist der empfohlene Weg, um Backing-Beans in modernem JSF mit Jakarta EE zu verwalten und zu injizieren. Sie lernen, wie Beans korrekt annotiert, ihren Lebenszyklusscopes zugeordnet und mit anderen Komponenten verknüpft werden.
- Unterschied zwischen JSF Managed Beans und CDI Beans
- CDI-Annotationen: @Named, @Inject, @ApplicationScoped, @SessionScoped, @RequestScoped
- Lifecycle und Scoping von Beans im JSF-Kontext
- Kommunikation zwischen Beans per CDI
- Parameterübergabe und Injection von Services und EJBs
- Best Practices für saubere Schichtentrennung mit CDI
Das dritte Modul widmet sich JSF-Komponentenbibliotheken und erweiterten Features. Reine Standard-JSF-Komponenten decken viele Anforderungen moderner Webanwendungen nicht vollständig ab. Bibliotheken wie PrimeFaces erweitern das Komponentenset erheblich und erlauben die Umsetzung moderner UI-Patterns mit wenig Aufwand.
- Überblick über verbreitete JSF-Bibliotheken (PrimeFaces, RichFaces, OmniFaces)
- Integration einer Komponentenbibliothek in ein Maven-Projekt
- Tabellen, Panels, Dialoge und Formulare mit Bibliothekskomponenten
- Ajax-fähige Komponenten in JSF: partial rendering mit f:ajax
- Datentabellen mit Paginierung, Sortierung und Filterung
- Theming und Anpassung von Komponentenstilen
Das vierte Modul zeigt die Integration von JSF in eine vollständige Enterprise-Architektur. Eine produktive Webanwendung besteht nicht nur aus einer Oberfläche — die JSF-Schicht muss mit Datenbank-Zugriff (JPA), Geschäftslogik (EJBs) und Sicherheit (Java EE Security) zusammenarbeiten. In diesem Block lernen Sie, wie diese Teile korrekt zusammengefügt werden.
- Aufbau eines vollständigen Java-EE-Projekts mit JSF, EJB und JPA
- Navigation, Seitenfluss und Redirect-Muster in JSF
- Fehlerbehandlung und globale Fehlermeldungen
- Internationalisierung und Mehrsprachigkeit in JSF
- Deployment auf einem Java-EE-Application-Server (z. B. WildFly, GlassFish)
- Überblick über Migration älterer JSF-Versionen zu Jakarta EE
Praxisblock — die Kursthemen werden durch praktische Aufgaben und ein abschließendes Übungsprojekt vertieft. Typische Aufgaben im Kurs sind folgende.
- Anlegen eines Maven-basierten JSF-Projekts von Grund auf
- Einfache Datenliste mit H:dataTable und Managed Bean anzeigen
- Formular mit clientseitiger und serverseitiger Validierung umsetzen
- CDI-Beans für Session und Request implementieren
- AJAX-Teilaktualisierung einer Komponente mit f:ajax
- PrimeFaces-Datatable mit Sortierung und Filterung einbinden
- Navigationsregel-basierte Weiterleitung nach Formularabsendung
- JPA-Entität über EJB-Service in einer JSF-Seite anzeigen und bearbeiten
- Sicherheitsmechanismus für Login-Seite implementieren
- Fehlerseitenbehandlung für 404 und allgemeine Exceptions
- Deployment des Projekts auf einem lokalen Application-Server
- Code-Review: typische JSF-Antipatterns identifizieren und korrigieren
Die Praxisaufgaben orientieren sich an realen Enterprise-Szenarien, damit Teilnehmende nach dem Kurs unmittelbar in bestehenden oder neuen Projekten produktiv eingesetzt werden können.
Lernziele:
Nach Abschluss des Kurses verfügen die Teilnehmenden über folgende Kenntnisse und Fertigkeiten.
- Sie kennen die Architektur und den Lebenszyklus einer JSF-Webanwendung und können ihn nachvollziehen
- Sie erstellen JSF-Seiten mit Facelets als Templating-Sprache und setzen H-Tags, F-Tags und UI-Tags gezielt ein
- Sie verstehen und nutzen das Managed Bean-Konzept zur Verknüpfung von Oberfläche und Geschäftslogik
- Sie setzen Context and Dependency Injection (CDI) für entkoppelte Komponenten im Java-EE-Umfeld ein
- Sie binden Daten über Expression Language (EL) zwischen Oberfläche und Backend-Klassen
- Sie implementieren Navigationsregeln und seitenbezogene Aktionen in JSF
- Sie validieren Benutzereingaben mit den eingebauten JSF-Validatoren und schreiben eigene Validatoren
- Sie verwenden gängige JSF-Komponentenbibliotheken wie PrimeFaces oder RichFaces in eigenen Seiten
- Sie integrieren JSF in eine vollständige Java-EE-Anwendung mit EJB und JPA
- Sie debuggen und analysieren JSF-Anwendungen mit gängigen Entwicklerwerkzeugen
- Sie kennen typische Performance- und Wartbarkeitsprobleme von JSF-Anwendungen und vermeiden sie
- Sie beurteilen, wann JSF gegenüber alternativen Frontend-Ansätzen die sinnvolle Wahl ist
Zielgruppe & Voraussetzungen
Der Kurs richtet sich an Java-Entwickler, die ihre Kenntnisse in der webbasierten Benutzeroberflächen-Entwicklung mit Java EE ausbauen möchten. Grundvoraussetzung ist solides Java-EE-Wissen, da JSF immer in Verbindung mit der Enterprise-Architektur eingesetzt wird.
- Java-Backend-Entwickler, die das Frontend mit JSF selbst umsetzen möchten
- Java-EE-Entwickler, die in Projekten mit bestehenden JSF-Anwendungen eingesetzt werden
- Software-Architekten, die JSF als Technologieoption fundiert beurteilen wollen
- Entwickler, die von älteren Web-Frameworks auf JSF/Jakarta EE migrieren
- Full-Stack-Java-Entwickler, die eine vollständige Enterprise-Web-Kompetenz anstreben
Die Teilnehmenden müssen über gute Deutschkenntnisse verfügen und im Umgang mit Windows geübt sein, also sich in der Ordnerstruktur zurechtfinden und mit Dateien arbeiten können. Entscheidend sind fundierte Kenntnisse der zentralen Konzepte der Web-Programmierung mit der Java Enterprise Edition — also Erfahrungen mit Java EE bzw. Jakarta EE, Kenntnisse in EJB, JPA und dem Application-Server-Deployment. Wer nur Java SE kennt, aber noch keine EE-Erfahrung hat, sollte zunächst einen Java-EE-Grundkurs besuchen. Grundlegende Kenntnisse in HTML sind hilfreich, aber nicht zwingend erforderlich.
Ablauf & Abschluss
Der Kurs wird als Combined Learning in Vollzeit durchgeführt. Theorieinhalte werden durch Präsentationen und Codebeispiele erklärt, Praxisaufgaben werden selbstständig im eigenen Entwicklungssetup erarbeitet. Die Verbindung von konzeptuellem Verständnis (JSF-Lebenszyklus, CDI-Modell) und praktischer Implementierung (eigene Webanwendungen schreiben) ist das Kernprinzip der Methodik. Trainer stehen für Fragen zur Verfügung, und Peer-Diskussionen fördern das Verständnis typischer Problemstellungen in Enterprise-Projekten.
Der Kurs dauert mehr als eine Woche und bis zu einem Monat und wird in Vollzeit absolviert. Dieser Zeitraum erlaubt eine solide Erarbeitung aller Themen von der JSF-Grundstruktur über CDI bis hin zu Komponentenbibliotheken und vollständiger Enterprise-Integration. Die genaue Stundenzahl variiert je nach Bildungsträger. Der Vollzeitmodus sorgt für ein konzentriertes Lerntempo, das gut auf nachfolgende Projektarbeit vorbereitet.
Nach erfolgreichem Abschluss erhalten die Teilnehmenden ein trägerinternes Zertifikat bzw. eine qualifizierte Teilnahmebescheinigung des jeweiligen Bildungsträgers (z. B. IFP, SBW GmbH, Institut für Bildung und Beruf, Ihr JobCoach, JOBINKUBATOR, Z&P). Dieses Dokument bestätigt die erworbenen Kenntnisse in der JSF-basierten Webentwicklung mit Jakarta EE. Es handelt sich nicht um eine Herstellerzertifizierung wie Oracle Certified Professional, sondern um eine branchenübliche Weiterbildungsbescheinigung, die im Zusammenhang mit einem nachweisbaren Projektportfolio aussagekräftig ist.
Nutzen & Perspektiven
JSF ist in vielen Unternehmen mit gewachsenen Java-EE-Architekturen tief verwurzelt. Entwickler, die JSF beherrschen, können sowohl bestehende Enterprise-Systeme warten und weiterentwickeln als auch neue Projekte auf Basis von Jakarta EE aufsetzen. Gerade in mittelständischen Unternehmen und im öffentlichen Sektor, wo Java-EE-Systeme weit verbreitet sind, ist dieses Wissen ein verlässlicher Beschäftigungsnachweis. Die im Kurs vermittelten Konzepte — Komponentenarchitektur, CDI, deklarative Validierung — sind übertragbar auf andere komponentenbasierte Frameworks und machen Sie zu einem anpassungsfähigen Entwickler. Das Verständnis des JSF-Lebenszyklus und der Datenbindung schärft zudem das grundsätzliche Verständnis von Web-Framework-Architektur, was beim Einarbeiten in neue Technologien hilft. Der Kurs ist bei AZAV-zertifizierten Trägern in der Regel über einen Bildungsgutschein der Agentur für Arbeit oder des Jobcenters förderbar. Weitere Förderwege — das Qualifizierungschancengesetz für Beschäftigte, Leistungen der Deutschen Rentenversicherung Bund, Rehabilitationsmaßnahmen sowie die Berufsförderung der Bundeswehr — können je nach persönlicher Situation in Betracht kommen. Eine Beratung beim Bildungsträger oder der zuständigen Stelle klärt die verfügbaren Optionen.
Häufig gestellte Fragen (FAQ)
Was sind Java Server Faces (JSF)?
Java Server Faces ist das Standardkomponentenframework der Jakarta EE (früher Java EE) für die Entwicklung grafischer Web-Oberflächen. JSF ermöglicht es, wiederverwendbare UI-Komponenten in Webanwendungen einzusetzen und diese über ein deklaratives Modell mit der Java-Geschäftslogik zu verbinden.
Welche Vorkenntnisse sind für den JSF-Kurs erforderlich?
Fundierte Kenntnisse der Java Enterprise Edition sind zwingend erforderlich — also Erfahrungen mit EJBs, JPA und dem Deployment auf Application-Servern. Wer nur Java SE kennt, sollte zunächst einen Java-EE-Grundkurs absolvieren. Gute Deutschkenntnisse und sicherer PC-Umgang werden ebenfalls vorausgesetzt.
Was ist CDI und warum wird es im JSF-Kurs behandelt?
Context and Dependency Injection (CDI) ist der empfohlene Mechanismus in Jakarta EE, um Beans zu verwalten und Abhängigkeiten automatisch zu injizieren. In modernem JSF werden CDI-Beans anstelle der alten Managed Beans verwendet, um eine saubere Schichtentrennung und Testbarkeit zu erreichen.
Welche Komponentenbibliotheken werden im Kurs behandelt?
Der Kurs gibt einen Überblick über verbreitete JSF-Komponentenbibliotheken wie PrimeFaces, RichFaces und OmniFaces. Schwerpunkt liegt auf PrimeFaces als der am weitesten verbreiteten Bibliothek, mit der moderne UI-Elemente wie AJAX-Tabellen, Dialoge und Panels umgesetzt werden.
Ist der Kurs förderbar?
Ja. Bei AZAV-akkreditierten Trägern kann der Kurs über einen Bildungsgutschein gefördert werden. Beschäftigte können das Qualifizierungschancengesetz nutzen. Weitere Förderungen der Deutschen Rentenversicherung, Rehabilitationsmaßnahmen und die Berufsförderung der Bundeswehr sind ebenfalls möglich.
Verwandte Kurse
Welche Förderung passt zu dir?
Finde in 30 Sekunden heraus, ob dir ein Bildungsgutschein oder andere Zuschüsse zustehen. Kostenlos & ohne Anmeldung.
Arbeitsmarkt-Report
IT-Berufe sind seit fünf Jahren der größte Fachkräfteengpass am deutschen Arbeitsmarkt. Der Bestand offener IT-Stellen ist 2024 auf einen Rekordstand gestiegen; AI- und Cloud-Skills werden in den nächsten Jahren weiter überdurchschnittlich nachgefragt.
Zielberufe & offene Stellen
Berufe, in denen Absolvent:innen dieses Kurses typischerweise arbeiten — mit bundesweit offenen Stellen der letzten 12 Monate.
- Softwareentwickler12.738 Stellen
- Softwareentwickler/in Java EE12.053 Stellen
- Mathematik (grundständig)1.574 Stellen
- Webentwickler526 Stellen
- Technische Informatik (grundständig)406 Stellen
- Java-Entwickler/in55 Stellen