Anleitung von Michael Kamleitner

Werbung
Michael Kamleitner
Heuberggasse 42-50
1170 Wien
[email protected]
+43 699 116 07 923
Enterprise java beans – step-by-step
0. Voraussetzungen
Der Orion Server ist in C:\Orion installiert! Sollten schon Versuche diese Applikation zum
Laufen zu bringen fehlgeschlagen sein, empfehle ich eine frische Orion-Installation! Als
Arbeitsverzeichnis wird C:\BEISPIEL verwendet – hier werden alle weiteren Dateien – wenn
nicht anders angegeben – hinkopiert/erstellt.
1. Erstellen von Hersteller.jar
Zuerst muss man die vier .java-Dateinen kompilieren:
javac
javac
javac
javac
Hersteller.java
HerstellerPK.java
HerstellerBean.java
HerstellerHome.java
Häufig wird man dabei jedoch folgende Fehlermeldung erhalten:
javac Hersteller.java
Hersteller.java:3: package javax.ejb does not exist
public interface Hersteller extends javax.ejb.EJBObject
^
1 error
Das Package javax.ejb befindet sich in der Datei ejb.jar, diese wiederum findet sich im RootVerzeichnis des Orion-Servers (C:\Orion). Daher muss man den Classpath1 folgendermaßen
gesetzt werden:
set classpath=C:\orion\ejb.jar;.
Wichtig ist der abschliessende Punkt, der bedeutet dass javac auch im aktuellen Verzeichnis
nach Klassen sucht!
1
Pfad(e) in denen der javac-Compiler nach benötigten Java-Klassen sucht
Seite 1/
Michael Kamleitner
Heuberggasse 42-50
1170 Wien
[email protected]
+43 699 116 07 923
Anschliessend legt man ein Verzeichnis META-INF (Achtung: Grossschreibung beachten!) an
und kopiert die Datei ejb-jar.xml hinein. Das Verzeichnis BEISPIEL sieht dann so aus:
C:\BEISPIEL>dir
Datenträger in Laufwerk C: ist System
Datenträgernummer: E8DF-7513
Verzeichnis von C:\BEISPIEL
07.06.2003
07.06.2003
07.06.2003
27.05.2003
07.06.2003
27.05.2003
07.06.2003
27.05.2003
07.06.2003
27.05.2003
27.05.2003
13:52
<DIR>
.
13:52
<DIR>
..
13:46
294 Hersteller.class
10:17
223 Hersteller.java
13:46
1.050 HerstellerBean.class
10:12
807 HerstellerBean.java
13:46
356 HerstellerHome.class
10:56
342 HerstellerHome.java
13:46
431 HerstellerPK.class
10:19
319 HerstellerPK.java
14:39
<DIR>
META-INF
8 Datei(en)
3.822 Bytes
3 Verzeichnis(se),
84.180.992 Bytes frei
C:\BEISPIEL>cd META-INF
C:\BEISPIEL\META-INF>dir
Datenträger in Laufwerk C: ist System
Datenträgernummer: E8DF-7513
Verzeichnis von C:\BEISPIEL\META-INF
27.05.2003
27.05.2003
27.05.2003
14:39
<DIR>
14:39
<DIR>
11:24
1 Datei(en)
2 Verzeichnis(se),
.
..
967 ejb-jar.xml
967 Bytes
84.180.992 Bytes frei
C:\BEISPIEL\META-INF>
Nun kann man mit folgender Anweisung die Datei Hersteller.jar erstellen:
jar cvf Hersteller.jar Hersteller.class HerstellerPK.class HerstellerHome.class
HerstellerBean.class META-INF/ejb-jar.xml
Das Kommando jar erstellt die jar-Datei2 mit den in einer Liste angegebenen Dateien.
2
jar = java archive, jar-Dateien entsprechen im Prinzip zip-Dateien
Seite 2/
Michael Kamleitner
Heuberggasse 42-50
1170 Wien
[email protected]
+43 699 116 07 923
2. Das Verzeichnis „Hersteller“
Nun erstellt man in C:\orion\applications ein Verzeichnis mit dem Namen „Hersteller“ sowie
die in der Grafik angegebenen Unterverzeichnisse (Achtung auf Gross-/Kleinschreibung):
C:\Orion\applications>md Hersteller
C:\Orion\applications>cd Hersteller
C:\Orion\applications\Hersteller>md META-INF
C:\Orion\applications\Hersteller>md hersteller-webapp
C:\Orion\applications\Hersteller>cd hersteller-webapp
C:\Orion\applications\Hersteller\hersteller-webapp>md WEB-INF
C:\Orion\applications\Hersteller\hersteller-webapp>
Anschliessend kopiert man die folgenden Dateien in ihre entsprechenden Verzeichnisse:
Hersteller.jar
application.xml
Test.jsp
Web.xml
->
->
->
->
nach
nach
nach
nach
c:\orion\applications\Hersteller
c:\orion\applications\Hersteller\META-INF
c:\orion\applications\Hersteller\hersteller-webapp
c:\orion\applications\Hersteller\hersteller-webapp\WEB-INF
Seite 3/
Michael Kamleitner
Heuberggasse 42-50
1170 Wien
[email protected]
+43 699 116 07 923
3. Konfigurieren des Orion-Servers
In die Datei c:\orion\config\server.xml wird folgende Zeile hinzugefügt:
<?xml version="1.0"?>
<!DOCTYPE application-server PUBLIC "Orion Application Server Config"
"http://www.orionserver.com/dtds/application-server.dtd">
<application-server
application-directory="../applications"
deployment-directory="../application-deployments"
>
<rmi-config path="./rmi.xml" />
<!-- JMS-server config link, uncomment to activate the JMS service -->
<!-- <jms-config path="./jms.xml" /> -->
<log>
<file path="../log/server.log" />
</log>
<global-application name="default" path="application.xml" />
<application name="hersteller" path="../applications/Hersteller" autostart="true" />
<global-web-app-config path="global-web-application.xml" />
<web-site path="./default-web-site.xml" />
<!-- Compiler, activate this to specify an alternative compiler such
as jikes for EJB/JSP compiling. -->
<!-- <compiler executable="jikes" classpath="/myjdkdir/jre/lib/rt.jar" /> -->
</application-server>
Danach wird in c:\orion\config\default-web-site.xml folgende Zeile hinzugefügt:
<?xml version="1.0"?>
<!DOCTYPE web-site PUBLIC "Orion Web-site" "http://www.orionserver.com/dtds/website.dtd">
<web-site host="[ALL]" port="80" display-name="Default Orion WebSite">
<!-- The default web-app for this site, bound to the root -->
<default-web-app application="default" name="defaultWebApp" />
<web-app application="hersteller" name="hersteller-webapp" root="/hersteller"
shared="true" load-on-startup="true" max-inactivity-time="no shutdown" />
<!-- Uncomment this to activate the news app -->
<!-- <web-app application="news" name="news-web" root="/news" /> -->
<!-- Access Log, where requests are logged to -->
<access-log path="../log/default-web-access.log" />
</web-site>
Seite 4/
Michael Kamleitner
Heuberggasse 42-50
1170 Wien
[email protected]
+43 699 116 07 923
4. Starten des Orion-Servers
Nun kann der Orion-Server mittels des Kommandos
Java –jar orion.jar
gestartet werden. Möglicherweise führt dies jedoch zu folgender Fehlermeldung:
C:\Orion>java -jar orion.jar
Auto-deploying hersteller (Previous deployment not found)...
Auto-deploying Hersteller.jar (No previous deployment found)... Error compiling
C:\Orion\applications\Hersteller/Hersteller.jar: Error instantiating compiler: Javac
not installed, copy tools.jar from your sun JDK dir's lib dir to the orion dir or add
a <library path="the/path/to/tools.jar" /> and restart
Auto-deploying file:/C:/Orion/applications/Hersteller/hersteller-webapp/ (Previo
us deployment not found)...
Orion/2.0.1 initialized
Am einfachsten kann dies korrigiert werden indem man die Datei tools.jar aus dem libVerzeichnis des Java-SDKs nach c:\orion kopiert. Danach sollte der Orion-Server korrekt
gestartet werden können:
C:\Orion>java -jar orion.jar
Auto-deploying Hersteller.jar (No previous deployment found)...
Auto-creating table: create table HerstellerBean (HerstellerID BIGINT not null
primary key, HerstellerName VARCHAR(255) null)
done.
Orion/2.0.1 initialized
Nun muss man noch einen Bug des Orion-Servers im Autodeployment ausbessern. Dazu
beendet man den Server (STRG-C) und ändert in der Datei c:\orion\applicationdeployments\hersteller\hersteller.jar\orion-ejb-jar.xml das location-Attribut:
<entity-deployment name="HerstellerBean" location="HerstellerHome"
wrapper="HerstellerHome_EntityHomeWrapper2" table="HerstellerBean" datasource="jdbc/HypersonicDS">
Danach kann man den Orion-Server neu starten (dabei meldet der Server korrekt dass die
Datei orion-ejb-jar.xml sich geändert hat).
Seite 5/
Michael Kamleitner
Heuberggasse 42-50
1170 Wien
Um die Applikation zu testen gibt man im Browser folgende URL an:
http://localhost/hersteller/Test.jsp
Seite 6/
[email protected]
+43 699 116 07 923
Herunterladen