Web-Entwicklung mit Apache Wicket

Empfohlene Schulungsdauer: 3 Tage, insgesamt 24 Unterrichtsstunden à 45 Minuten

Kursziele

Wicket ist ein elegantes und komponentenorientieres Web-Framework, das den Entwurf von Ajax-basierten Webseiten mit Java radikal vereinfacht. In der Web-Entwicklung mit Wicket entwerfen Web-Designer das statische HTML-Layout mit WYSIWYG-Werkzeugen während Software-Entwickler sich parallel auf die Programmlogik konzentrieren, ohne dabei von technischen Details wie URL-Pfaden oder JavaScript-Aufrufen für die Ajax-Komponenten abgelenkt zu werden. Teilnehmer des Wicket-Seminars lernen die Leichtigkeit des Web-Frameworks an praxisnahen Beispielen kennen, z. B. das wenige POJOs (einfache Java-Klassen) zusammen mit Listenern für Ereignisse ausreichen, um Web 2.0-Oberflächen zu entwerfen. Das Seminar stellt mittels einer durchgehenden Beispielanwendung die leistungsstarken Wicket-Komponenten vor, wie etwa Kalender, Bäume und Tabellen, und zeigt weiterhin, wie eigene Komponenten entworfen und in eigenen Projekten eingebunden werden, um so die Wiederverwendung zu vereinfachen. Im Ausblick geht die Wicket-Schulung auch Fragen wie Sicherheit, SEO (Aufbau von suchmaschinenoptimierten Seiten), effektive Fehlersuche ein und stellt erprobte Lösungen für die Integration von Backend-Technologien wie JPA/Hibernate und Spring vor.

Zielgruppe

Java Entwickler, die ein effizientes Web-Framework nutzen möchten und Wicket von allen Seiten kennen lernen wollen

Kursvoraussetzungen

Kurs ›Java für Fortgeschrittene‹, ›Java für Umsteiger‹ oder vergleichbare Kenntnisse. Kentnisse in HTML sowie Grundkenntnisse in JavaScript und CSS sind hilfreich.

Seminarinhalte

[LOGO]
  • Einstieg in Wicket

    - Anforderungen an ein modernes Web-Framework
    - Wie Ajax die Welt verändert: Ein-Seiten-Anwendungen
    - Trennung von View (HTML) und Logik (Java)
    - Installation im Servlet-Container, Jar-Dateien, web.xml
    - Erstes praktisches Beispiel: Template und Java verbinden
    - Rolle einer Seite, Komponente, Modellklasse
    - Architektur von Wicket: Request/Response-Lauf
    - Debugging von Wicket-Anwendungen
    - Wicket Eclipse-Plugin, Maven
    - Wicket im Vergleich zu anderen Web-Frameworks
    - Wicket-Lizenz, Community, Unterstützung
  • Wicket-Komponenten und Formularverarbeitung

    - Page-Objekt
    - Wicket-Komponentenbaum und -Darstellungsbaum
    - Vorgefertigte Komponenten
    - Beschriftungen
    - Internationalisierung
    - Renderer
    - Links (interne, externe), Bookmark-Links
    - Auf Ereignisse reagieren
    - Durchläufe mit Repeatern
    - Eingabefelder, Datumsfeld
    - Abschicken eines Formulars, Submit, POST/GET
    - Listen
    - Gültigkeitsprüfung, Standard-Validatoren, eigene Validator-Klassen schreiben
    - Konverter-Klassen
    - Statusmeldungen, Feedback
    - Behavoir
  • Container und einheitliches Layout

    - Gruppierungen in Panel und Container
    - Fragmente
    - Layout ›erben‹
    - Border-Komponente
  • Ajax-Komponenten von Wicket

    - Ajax-Untersützung in Wicket
    - Seiten-Refresh
    - Listen und Tabellen
    - RepeatingView, DataView, GridView, …
    - Fallback, wenn JavaScript fehlt
    - Autovervollständigung
  • Weiterführende Themen

    - Login-Formular, Authentifizierung
    - Bilder, CSS-Dateien und JavaScript exportieren
    - Eigene Komponenten entwickeln
    - Dynamische Grafiken zur Laufzeit erzeugen
    - Upload und Download
    - URLs manuell festlegen
    - Logging einrichten
    - Testen von Wicket-Anwendungen
    - Architektur von 3-Schichten-Anwendungen
    - Wicket im Depedency-Injection-Container
    - JPA/Hibernate-Objekte an die Gui binden
    - Wicket-Frameworks Wicket RAD und Wicketopia

Eingesetze Seminar-Software

Apache Wicket 1.4.x. Als Laufzeitumgebung wird standardmäßig Java SE 6 von Sun zusammen mit der Entwicklungsumgebung Eclipse 3.5 eingesetzt (Paket ›Eclipse IDE for Java EE Developers‹). Auf Wunsch auch NetBeans 6 oder andere Entwicklungsumgebungen (IntelliJ IDEA, Oracle JDeveloper).

[Addthis] [Google Bookmarks] [Yahoo! Bookmarks] [Delicius] [Mister Wong]

 

[Nach oben]