Beispielprogramm zur Studienarbeit: Enterprise JavaBeans: Architektur, Konzepte und Implementation ==================================================================== 1. Voraussetzungen: =================== Für den Betrieb des Servers und ein fehlerfreies Übersetzen des Quellcodes ist es notwendig, das das JDK 1.3 (oder höher) installiert ist. Weiterhin müssen sich folgende Programme im Pfad befinden: -java -javac -jar -make Das JDK 1.3 (Standard Edition) befindet sich, sollte es nicht vorhanden sein, auf der CD. Der Server und die Beispielanwendung sind im Prinzip auf jedem Betriebssystem lauffähig. Lediglich das Makefile ist auf den Einsatz auf Unix-ähnlichen Systemen ausgelegt. 2. Installation des EJB-Servers und des Beispielprogramms: ========================================================== Als EJB-Server wird der freie Server JBoss verwendet. Dieser Server und der darin eingebettet Container sind komplett in Java implementiert und brauchen lediglich Benutzerrechte auf dem System. JBoss beinhaltet eine einfache SQL-Datenbank, die für dieses Beispielprogramm genutzt wird. Es ist also nicht nötig JBoss mit einem weiteren RDMS zu konfigurieren. JBoss und das Beispielprogramm sind in dem TAR-Archiv ejb-beispielanwendung.tgz auf der CD zusammengefasst. Hierzu das Archiv an eine Beliebige Stellte in den Dateibaum kopieren und mit Hilfe von: > tar xvfz ejb-beispielanwendung.tgz entpacken. In dem nun entstehenden Verzeichnis ./ejb-beispielanwendung/ befindet sich das Verzeichnis jboss/, in dem der EJB-Server zu finden ist. In dem Verzeichnis src/ befindet sich der Quellcode des Beispielprogramms sowie ein entsprechendes Makefile, um diesen zu übersetzen. Weiterhin enthält das Verzeichnis ./ejb-beispielanwendung ein Script, das den EJB-Server startet und eines mit dessen Hilfe die Beispielanwendung gestartet werden kann. 3. Starten des Servers: ======================= Mit Hilfe des Scriptes >./ejb-beispielanwendung/start_jboss wird der EJB-Server gestartet. Die EJBs der Beispielanwendung befinden sich bereits im Deployment-Verzeichnis des Servers und werden automatisch beim Start des Servers deployed. 4. Starten des Clients: ======================= Mit Hilfe des Scriptes >./ejb-beispielanwendung/run_client wird eine einfache Clientanwendung gestartet, die einige Bücher in die Bibliothek einfügt, die Bücher zählt, Alle Bücher des Autors Douglas Adams sucht und alle Bücher wieder aus der Bibliothek löscht. 5. Übersetzen der Beispielanwendung: ==================================== Die Beispielanwendung ist nach Entpacken des Archives bereits übersetzt. Sollte es dennoch einmal nötig sein die Beispielanwendung neu zu übersetzen kann dies folgendermassen geschehen: -Wechseln in das Verzeichnis ./ejb-beispielanwendung/src/ -mit > make deploy die EJBs BibliothekBean und BuchBean übersetzen, zusammen mit dem Deployment-Descriptor aus dem Verzeichnis META-INF in einem JAR-File zusammenfassen und dieses im Server installieren. Die EJBs können im laufenden Server neu deployed werden. -mit > make client den BibliotheksClient neu übersetzen. 6. Übersicht Verzichnisstruktur: ================================ ./ejb-beispielanwendung | +jboss (Root-Verzeichnis des EJB-Servers) | | | +deploy (alle in dieses Verzeichnis kopierten EJBs werden automatisch deployed) | | | +bin (Programme um den Server zu starten und zu verwalten) | | | +[...] | | +src (Quellcode des Beispielprogramms) | | | | | +META-INF (Verzeichnis für Deployment-Descriptor etc.) | | | | | +ejb-jar.xlm (der Deployment-Descriptor) | | | | | +jboss.xml (Datei zur Server-Konfiguration) | | | | | +Makefile (zum Übersetzen und Installation der Beispielanwendung) | | | +ckorn | | | +studienarbeit | | | +buch (die Buch-Bean) | | | | | +bean (die Bean-Klasse) | | | | | +interfaces (Home- und Remote-Interfaces, sowie Primärschlüssel-Klasse) | | | +bibliothek (die Bibliotheks-Bean) | | | | | +bean (die Bean-Klasse) | | | | | +interfaces (Home- und Remote-Interface) | | | +client (eine einfache Cleint-Anwendung) | | +start_jboss (startet den EJB-Server) | +run_client (startet den Client)