> Inhalt: Einführung in das Programmieren mit Java > Inhalt: Einführung in das Programmieren von Enterprise Java Beans 

Tutorial: Einfache Session Bean (Java_EJB_01) – Packen der Dateien in Java-Archive (JAR) und 'deploy'

* Bitte beachten Sie die Hinweise und Bestimmungen bezüglich Urheberrecht, Haftungsausschluß und geschützte Marken oder Warenzeichen die für dieses Web-Dokument und möglicherweise auch für 'verlinkte' Dokumente gelten.

  • Der Betreiber dieser Web-Site (www.javascout.biz) ist nicht verantwortlich für den Inhalt von Web-Sites, die innerhalb dieses Web-Dokumentes oder anderer Dokumente von www.javascout.biz verlinkt sind.

  • Wenn dieses Web-Dokument oder andere Dokumente dieser Web-Site (www.javascout.biz) Rechte von Ihnen verletzen, oder sie glauben, daß Rechte Anderer (Dritter Personen) dadurch verletzt werden, informieren Sie bitte den Betreiber dieser Web-Site.
    Eine E-Mail können Sie ganz einfach durch anklicken des Symbols oder Textes im Frame rechts oben senden.

Dieses Dokument drucken.

 Letzte Bearbeitung dieses  Dokuments:
2008-01-05



Voraussetzungen für das Verständnis dieses Dokuments:

Grundkenntnisse in der Programmierung von Java (Klassen, Methoden, Schleifen) oder anderer Objekt-Orientierter Programmiersprachen (z.B. C++, Modula-2, Pascal).

Kenntnisse im Umgang mit Eclipse; empfohlen ist das Durcharbeiten der Einführungsbeispiele für das Programmieren mit Java.

Ungefährer Zeitbedarf zum Durcharbeiten dieses Dokuments:

Arbeitszeit:
Ca.
.

Diesem Dokument enthält die Anleitungen um die Dateien, die für den Einsatz auf einem Java-Application-Server (JAS) und für die Schnittstellen-Definition für Client-Programme erforderlich sind, zu erstellen.

Zum Erstellen der erforderlichen Dateien wird die Möglichkeit des 'Project archives', die das JBoss-IDE-Plugin für Eclipse (Installation siehe Eclipse Plugins installieren > Installation des JBoss-IDE-Plugins) bietet, genutzt.

Die damit erstellte JAR-Datei (Java-ARchiv) wird anschließend in einem JAS (JBoss in diesem Tutorial) 'deployed'; das heißt die Datei wird in das dafür vorgesehene Verzeichnis des JAS kopiert und so an den JAS 'übergeben'.
Damit können Client-Programme (die noch erstellt werden müssen) auf die Dienste des bisher erstellten EJB zugreifen.

Als letzter Teil dieses Schrittes werden jene Dateien, die die Schnittstellen für die Client-Programme definieren, in eigene JAR-Dateien gepackt.
Diese Dateien werden dann von den (noch zu erstellenden) Client-Programmen importiert.

Inhaltsverzeichnis:

Vorigerer Schritt: XDoclet 

Struktur der JAR-Datei für den JAS 
Vorbedingungen 
'Project archives' anlegen 
Dateien mit Java-Klassen hinzufügen
 
META-INF hinzufügen
 
JAR-Datei neu erstellen 
JAR-Datei an den JAS übergeben ('deploy') 
JAR-Datei für Client-Programme erstellen 
Weitere Schritte und verwandte Dokumentation 

Nächstes Tutorial: Client-Programm für Einfache Session Bean (Java_EJB_02) 

Struktur der JAR-Datei für den JAS

JAR-Dateien enthalten Unterverzeichnisse mit Dateien in komprimierter (gepackter) Form.
Der Algorithmus zum Komprimieren der Dateien kann nicht beeinflußt werden und ist auch nicht von Interesse.

Die Struktur der Unterverzeichnisse folgt zwei Vorgaben:

Die Theorie der Referenzierung von internen zu externen Namen, die den Einsatz von EJB so flexibel macht, ist im Detail im Dokument (noch zu schreiben) beschrieben.

Vorbedingungen

zum Inhaltsverzeichnis

'Project archives' anlegen

Wenn das bearbeitete Project das Erste, für das JAR-Dateien erstellt werden sollen, im Eclipse-Workspace ist (so wie bei diesem Tutorial), muß zuerst die View für die 'Project archives' eröffnet werden.

Das geschieht über die Auswahl Window > Show View > Other... .

  

Im darauf hin erscheinenden Fenster (Show View) wird 'Project archives' ausgewählt.

'Project archives' ist innerhalb der Gruppe 'JBoss Tools' zu finden und wenn sie Auswahl nicht sichtbar ist, kann sie durch anklicken des kleinen Dreiecks links neben 'JBoss Tools' sichtbar gemacht werden.

Anschließend wird die Schaltfläche [ OK ] angeklickt um einen neuen Bereich im unteren Bereich zu öffnen.

Durch Anklicken des neuen Bereiches mit der rechten Maustaste wird ein Kontext-Menu angezeigt.

Mit der Auswahl von New Archive > EJB JAR wird ein Fenster (New EJB JAR) geöffnet mit dem Parameterisierungen für die zu erstellende Datei vorgenommen werden können.

Die vorgegebenen Einstellungen werden beibehalten.

Nach dem Anklicken der Schaltfläche [ Next > ] wird eine Vorschau mit dem Namen und der Struktur der Datei mit der Erweiterung 'jar' angezeigt.

Die Datei ist derzeit noch leer; für sie werden später die Regeln, was in diese Datei gepackt werden soll, festgelegt.

Durch das Anklicken der Schaltfläche [ Finish ] wird die Datei erstellt.

Die neu erstellte Datei ist jetzt im Bereich des 'Project archives' gelistet.



zum Inhaltsverzeichnis

Dateien mit Java-Klassen hinzufügen

Die Java-Klassen inklusive der durch die Java-'package's definierten Verzeichnis-Struktur werden in das EJB aufgenommen.

Für das Hinzufügen von Dateien (inklusive der Verzeichnis-Struktur) wird die Datei 'Java_EJB_01.jar' mit der rechten Maustaste angeklickt und aus dem Kontext-Menu New Fileset ausgewählt.

  

Im folgenden Fenster wird durch Anklicken der Schaltfläche [ Workspace... ] ein eigenes Fenster geöffnet, in dem als Nächstes jenes Verzeichnis, in dem die Dateien mit den Java-Klassen – inlusive der Verzeichnis-Struktur für die Java-'package's – ausgewählt werden kann.

Im erscheinenden Auswahl-Fenster ('Folder Selection') wird wird zu jenem Verzeichnis manövriert, in dem die Dateien mit den Java-Klassen liegen.
Dieses Verzeichnis wurde in
Schritt 1: Einrichten des Projects > Verzeichnisse für Quell-Code und kompilierte Java-Klassen festlegen definiert.

Die Verzeichnis-Struktur wird angezeigt bzw. verborgen, wenn das kleine Dreieck links neben einem Verzeichnis-Namen angeklickt wird.

Die Auswahl wird durch Anklicken der Schaltfläche [  OK  ] bestätigt und damit wird auch das Fenster geschlossen.

Im Fenster für das 'New Fileset' werden dann die Filter-Kriterien für die Dateien, die in die JAR-Datei aufgenommen werden sollen, im Feld 'Includes' festgelegt: **/*.class.

**/ bedeutet, dass alle Verzeichnisse in der Struktur auf Dateien mit einem passenden Namen durchsucht werden.

*.class bedeutet, daß alle Dateien, deren Namen mit .class endet, in die JAR-Datei gepackt werden sollen.

Nach Eingabe der Filter-Kriterien ist im Feld 'Preview' zu sehen, welche Dateien ausgewählt sind.

Die Definition wird durch Anklicken der Schaltfläche [  Finish  ] abgeschlossen und damit wird auch das Fenster geschlossen.

Im Bereich des 'Project archives' ist dann sichtbar, welche Dateien für das Packen in die JAR-Datei ausgewählt sind.

Die Struktur für die JAR-Datei kann durch Anklicken des kleinen Dreiecks links neben den Datei- bzw. Verzeichnis-Namen angezeigt oder verborgen werden.

  

zum Inhaltsverzeichnis

META-INF hinzufügen

Die Auswahl der Dateien mit den Meta-Informationen für den JAS (Java-Application-Server) in die JAR-Datei ist ähnlich der Auswahl der Dateien mit den Java-Klassen.
Zusätzlich ist innerhalb der JAR-Datei ein Verzeichnis zu definieren, in dem die Dateien mit den Meta-Information enthalten sind.
In diesem Abschnitt erfolgt noch einmal eine kompette Beschreibung mit allen Abbildungen um die Routine zu festigen.

Für das Erstellen eines Verzeichnisses innerhalb der Datei 'Java_EJB_01.jar' wird diese mit der rechten Maustaste angeklickt und aus dem Kontext-Menu New Folder ausgewählt.

  

Im folgenden Fenster ('Create a folder') wird der Name des Verzeichnisses (META-INF) eingegeben und anschließend die Schaltfläche [  OK  ] angeklickt.

Im Bereich des 'Project archives' ist dann sichtbar, welche Dateien für das Packen in die JAR-Datei ausgewählt sind.

Ist das Vezeichnis nicht zu sehen kann die Struktur für die JAR-Datei durch Anklicken des kleinen Dreiecks links neben den Datei- bzw. Verzeichnis-Namen angezeigt werden.

Welche Dateien als Meta-Information aufgenommen werden, wird über ein 'Fileset' festgelegt.

Für das Hinzufügen dieser Dateien wird das Verzeichnis 'META-INF' mit der rechten Maustaste angeklickt und aus dem Kontext-Menu New Fileset ausgewählt.

  

Im folgenden Fenster wird durch Anklicken der Schaltfläche [ Workspace... ] zuerst ein Fenster geöffnet, in dem als Nächstes jenes Verzeichnis ausgewählt wird, in dem die Dateien für die META-Information enthalten sind.

Im Auswahl-Fenster ('Folder Selection') wird wird zu jenem Verzeichnis manövriert, in dem die Dateien mit den Meta-Informationen liegen.
Dieses Verzeichnis wurde in
Schritt 3: XDoclet > Untergruppe 'deploymentdescriptor'-Parameter definiert.

Die Verzeichnis-Struktur wird angezeigt bzw. verborgen, wenn das kleine Dreieck links neben einem Verzeichnis-Namen angeklickt wird.

Die Auswahl wird durch Anklicken der Schaltfläche [  OK  ] bestätigt und damit wird auch das Fenster geschlossen.

Im Fenster für das 'New Fileset' werden dann die Filter-Kriterien für die Dateien, die in die JAR-Datei aufgenommen werden sollen, im Feld 'Includes' festgelegt: *.*.

Das bedeutet, daß alle Dateien, die in Schritt 3: XDoclet erzeugt und im Unterverzeichnis 'META-INF' gespeichert wurden, in die JAR-Datei gepackt werden.

Nach Eingabe der Filter-Kriterien ist im Feld 'Preview' zu sehen, welche Dateien ausgewählt sind.

Die Definition wird durch Anklicken der Schaltfläche [  Finish  ] abgeschlossen und damit wird auch das Fenster geschlossen.

Im Bereich des 'Project archives' ist dann sichtbar, daß auch ein Verzeichnis 'META-INF' mit Dateien in die JAR-Datei gepackt wird.

Die Struktur für die JAR-Datei kann durch Anklicken des kleinen Dreiecks links neben den Datei- bzw. Verzeichnis-Namen angezeigt oder verborgen werden.



zum Inhaltsverzeichnis

JAR-Datei neu erstellen

Bis jetzt wurde nur festgelegt, welche Dateien in die JAR-Datei gepackt werden.
In diesem kurzen Abschnitt wird beschrieben, wie die JAR-Datei erstellt wird.

Dazu wird die Datei 'Java_EJB_01.jar' mit der rechten Maustaste angeklickt und aus dem Kontext-Menu Build Archive (Full) ausgewählt.

Der Vorgang des 'Packens' dauert nur Bruchteile einer Sekunde und es wird keine Rückmeldung gegeben wenn der Vorgang beendet ist.

  

Die erzeugte Datei ist in der Struktur des 'Package Explorer's zu sehen und wenn Sie ganz sicher gehen wollen, können Sie diese mit der rechten Maustaste anklicken und aus dem Kontext-Menu Properties auswählen.

  

Im anschließend angezeigten Fenster ist das Datum der Datei-Erstellung zu sehen ('Last modified').

Damit kann überprüft werden, ob die Datei neu erstellt wurde.

  



zum Inhaltsverzeichnis

JAR-Datei an den JAS übergeben ('deploy')

Eclipse bietet zwar die Möglichkeit, die fertige JAR-Datei an verschiedene Java Application Server (JAS) zu übergeben – bei Einsatz von JBoss ist es aber am einfachsten, die gerade erstellte JAR-Datei in das entsprechende Verzeichnis von JBoss zu kopieren.

Dazu wird ein 'Terminal'-Fenster geöffnet und folgendes Kommando eingegeben:
cp /workspace_directory/Java_EJB_01.jar /jboss_home/server/default/deploy

Dabei ist /workspace_directory durch jenes Verzeichnis zu ersetzen, in dem die Dateien des Projects innerhalb von Eclipse enthalten sind, z.B. /home/kurti-o/java_ejb/Java_EJB_01.
/jboss_home ist das Stamm-Verzeichnis, in dem JBoss installiert ist. Wenn die Installation so wie in JBoss Java-Application-Server installieren > Installation von JBoss beschrieben erfolgt ist, ist dieses Verzeichnis /opt/jboss.

Wenn JBoss in einem 'Terminal'-Fenster läuft (Start unter unter JBoss Java-Application-Server installieren > Test auf korrekte Installation beschrieben), ist die Meldung über das 'Deploy' zu sehen.



zum Inhaltsverzeichnis

JAR-Datei für Client-Programme erstellen

Für das Client-Programm, das im nächsten Schritt (Tutorial: Client-Programm für einfache Session Bean (Java_EJB_01)) erstellt wird, ist eine JAR-Datei notwendig, die die Schnittstellen des auf dem JAS laufenden EJB beschreibt. Wie diese JAR-Datei erstellt wird ist in diesem Abschnitt beschrieben.

Das Definieren der Dateien, die in diese JAR-Datei gepackt werden sollen, erfolgt nach dem gleichen Schema wie in den vorigen Abschnitten (ab 'Project archives' anlegen) beschrieben.
Aus diesem Grund werden nicht alle Schritte mit Abbildungen dargestellt.

Durch Anklicken des Bereiches 'project archives' mit der rechten Maustaste wird das bekannte Kontext-Menu angezeigt.

Mit der Auswahl von New Archive > JAR wird ein Fenster (New JAR) geöffnet mit dem Parameterisierungen für die zu erstellende Datei vorgenommen werden können.

Der Name der Datei wird auf Java_EJB_01-client.jar geändert.
Das ist notwendig, weil eine Datei mit dem vorgegebenen Namen bereits existiert (Java_EJB_01.jar als EJB-Container).

Anschließend wird die Schaltfläche [ Workspace... ] angeklickt.

Im folgenden Fenster ('Select a destination') wird das Verzeichnis 'Java_EJB_01' ausgewählt. Damit wird eine eigene Datei erstellt.
(Bei Auswahl von 'Java_EJB_01.jar' würde innerhalb dieser Datei ein Unterverzeichnis eröffnet.).

Durch Anklicken der Schaltfläche [ OK ] wird die Auswahl des Verzeichnisses bestätigt.

Durch das Anklicken der Schaltfläche [ Finish ] im Fenster 'New JAR' wird die Datei erstellt.

Die neu erstellte Datei ist jetzt im Bereich des 'Project archives' gelistet.

In die Datei werden nur Dateien mit Java-Klassen, die von Client-Programmen importiert werden müssen, aufgenommen.

Für das Hinzufügen dieser Dateien wird die gerade angelegte Datei mit der rechten Maustaste angeklickt und aus dem Kontext-Menu New Fileset ausgewählt.


  

Im folgenden Fenster (untere Abbildung nachdem das Verzeichnis ausgewählt wurde) wird durch Anklicken der Schaltfläche [ Workspace... ] zuerst ein weiteres Fenster geöffnet, in dem das Verzeichnis mit den Dateien, die in die JAR-Datei aufgenommen werden sollen, ausgewählt werden kann.

Im folgenden Fenster ('Folder Selection', obere Abbildung) wird zum Verzeichnis gen/classes manövriert.
Die Auswahl wird durch Anklicken der Schaltfläche [  OK  ] bestätigt.

Im Fenster für das 'New Fileset' werden dann noch im Feld 'Includes' die Filterkriterien **/staticvalues/*.class für die Auswahl der Dateien festgelegt.

Die ausgewählte Klasse ('CountryConstants.class') ist dann im Bereich 'Preview' gelistet.

Die Auswahl wird durch Anklicken der Schaltfläche [ Finish ] bestätigt und damit wird auch das Fenster geschlossen.

 


Das vorige Verfahren für das Hinzufügen eines 'Fileset' mit Dateien wird für das Verzeichnis
gen/classes
mit den Filterkriterien
**/interfaces/*.class
wiederholt.

Wenn die Parameter korrekt definiert wurden, sind folgende Dateien ausgewählt:
'ShowTimeDate.class'
'ShowTimeDateHome.class'


Im Bereich des 'Project archives' ist dann sichtbar, welche Dateien in die JAR-Datei gepackt werden.

Die Struktur für die JAR-Datei kann durch Anklicken des kleinen Dreiecks links neben den Datei- bzw. Verzeichnis-Namen angezeigt oder verborgen werden.

Um die JAR-Datei mit den definierten Inhaltsdateien zu erstellen wird die Datei 'Java_EJB_01-client.jar' mit der rechten Maustaste angeklickt und aus dem Kontext-Menu Build Archive (Full) ausgewählt.

Der Vorgang des 'Packens' dauert nur Bruchteile einer Sekunde und es wird keine Rückmeldung gegeben wenn der Vorgang beendet ist.

Die Methode wie geprüft werden kann, ob die Datei wie gewünscht erstellt wurde, ist unter JAR-Datei neu erstellen beschrieben.

  



zum Inhaltsverzeichnis

Weitere Schritte und verwandte Dokumentation

Dokument

Inhalt

Client-Programm für Einfache Session Bean (Java_EJB_02) 

Im nächsten Tutorial wird ein einfaches Client-Programm, das die in diesem Tutorial entwickelte EJB nutzt.

zum Inhaltsverzeichnis