8.2.2 Übung am Projekt
Nachdem man das erste Anfängerbuch für Java durchgearbeitet hat, kann man nun am diesem Projekt anfangen zu arbeiten. Auch hier ist man auf Bücher angewiesen und wer am Puls der Zeit entwickeln möchte, der kann entweder sehr viel und lange selber ausprobieren oder eben Bücher lesen, wodurch man schneller zum Ergebnis kommt. Für die Grundlagen von J2EE kann ich das Buch Enterprise JavaBeans von BACKSCHAT/GARDON, aber auch das Buch "J2EE mit Eclipse 3 und JBoss, m. CD-ROM" (ISBN 3446227393) hört sich sehr interessant an und scheint gut geeignet zu sein. Zu diesen Themen gibt es leider auch nur sehr wenig Dokumentation im Internet, so dass man um Bücher nicht herumkommt, aber so wird auch in Unternehmen entwickelt. Entweder hat man Kollegen, die ihr Wissen weitergeben oder man nimmt Bücher zu Hilfe. Optimalerweise ist beides der Fall und jeder Mitarbeiter ist Spezialist in einem Gebiet, bildet sich privat weiter und gibt das Wissen weiter.
Der Aufbau des Projekts ist durch verschiedene Diagramme abgebildet. Das Projekt besteht in Eclipse aus 6 Projekten:
- Base: Klassen, die in Client und Server verwendet werden. Maven-Goal:
- "clean test jar:install" erzeugt und installiert base-version.jar im Maven-Repo
- Client: Alles, was zum Client gehört. Maven-Goals:
- "wsclient wsclientcopytorepo" (siehe maven.xml) erzeugt das Web-Service Jar, wird in der Klasse de.golesny.pluesch.client.data.GameDataModel.java benutzt
- "test jar:install" erzeugt und installiert client-version.jar im Maven-Repo Core: EJB, Rundenberechnung. Maven-Goals:
- "ws": (siehe maven.xml) erzeugt die Web-Service-Mapping-Dateien im Verzeichnis target/xdoclet/gen-src/META-INF
- "jar:install ejb:install" erzeugt und installiert das ejb.jar ins Maven-Repo Persistenz: Persistenz-Schicht mit Hibernate-Mappings. Maven-Goals:
- "clean xdoclet:hibernatedoclet" erzeugt die Mapping-Dateien aus den Java-Doc-Kommentaren der POJO-Dateien
- "jar:install": (ohne clean, da sonst die Mappings wieder gelöscht werden) erzeugt und installiert das Jar ins Maven-Repo.
- Server: Dummy-Projekt ohne Sourcen. Maven-Goals:
- "clean ear:ear" erzeugt das EAR mit allen im Maven-Repo installierten Jars, dieses EAR kann dann im JBoss deployed werden. Es beeinhaltet das WAR(Web-Jar), EBJ.jar, HAR (Hibernate-Jar), und benötigte Jars (z.B. Base, Utils, ..)
- Web: Web-Projekt mit JSP-Dateien und Bild-Resourcen, für den Web-Container. Maven-Goals:
- "clean war:clean war:install": erzeugt und installiert das WAR ins Maven-Repo.
Der Einstieg wird beim Client am leichtesten sein. In der Klasse ActionDelegate.java werden alle Aktionen behandelt und neue Masken geladen. Die Startmaske ist de.golesny.pluesch.client.ui.mask.MaskDefault.java. Um etwas in Swing zu experimentieren ist diese Maske geeignet.