Aufbau einer Webanwendung mit JavaServer Faces (JSF)

Vokabeltraining

Andy Bosch

Mit JavaServer Faces steht der Entwicklergemeinde seit fast anderthalb Jahren ein neues UI-Framework zur Verfügung. Mit JSF sollen Anwendungsentwickler schnell professionelle Anwendungen im Webumfeld realisieren können. An dieser Stelle werden wir eine Beispiel-Webanwendung schrittweise mit JSF umsetzen. Der Fokus ist dabei auf die Vorgehensweise, die verschiedenen Arbeitsschritte, aber auch auf Besonderheiten und Architekturempfehlungen beim Einsatz von JSF gerichtet.

Die zu erstellende Anwendung stellt einen Vokabeltrainer dar. Es soll eine webbasierte Erfassung von (englischen) Vokabeln sowie eine gezielte Abfrage möglich sein. Zu diesem Zweck wird ein Karteikastensystem umgesetzt. Dieses ist so aufgebaut, dass neue Vokabeln zunächst in Fach eins landen. Wenn diese bei einer Abfrage korrekt übersetzt wurde, landet sie in Fach zwei usw. Maximal gibt es sechs Fächer. Wird eine Vokabel falsch übersetzt, landet sie wieder in Fach eins. Aus Platzgründen sind nicht sämtliche Quelltexte im Artikel abgedruckt. Die komplette Anwendung ist jedoch auf der Heft-CD beigelegt und kann beliebig eingesetzt und erweitert werden.Als Entwicklungsumgebung wird Exadel Studio verwendet. Es ist in der Standard Edition kostenfrei zu beziehen. Doch selbst die Professional Version (aktuell in der Version 3.0) ist mit 99 US-Dollar durchaus preiswert. Exadel Studio setzt auf der Eclipse-Plattform auf, aktuell wird bereits Eclipse 3.1 unterstützt. Die zu entwickelnde Anwendung benötigt natürlich zur Speicherung der Vokabeln eine Datenbank im Hintergrund. Dafür wird MySQL eingesetzt, als Persistenz-Framework kommt Apache Torque zum Einsatz. Die Anwendung verwendet keine EJBs, läuft somit vollständig in einem Servlet Container (Tomcat 5.x). In diesem Artikel wird jedoch ausschließlich auf JSF eingegangen; Fragestellungen zu Torque, MySQL etc. werden ausgeblendet.

Abb. 2: Benutzerdefinierte Komponente
Geschrieben von
Andy Bosch
Kommentare

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.