Wie Web Service Client für Axis2 starten ?

2Deep

Grünschnabel
Hallo zusammen !

Vorab muss ich gleich sagen das ich ein ziemlicher Neuling auf dem Gebiet bin.

Aber kommen wir jetzt mal zu meinem Problem.

Ich arbeite mich derzeit Schritt für Schritt durch das Buch "Java Web Services mit Apache Axis2".

Ich konnte mit dessen Hilfe einen simplen Web Service unter Verwendung von Jetty 6.1.9 deployen.
Vorher hab ich den "Validate"-Link verfolgt und Axis hat keine Fehler angezeigt (The core axis2 libraries are present.) usw.

So nachdem der Web Service deployed war und anscheinend einwandfrei lief, fuhr ich im Buch fort und machte mich daran den Client mit hilfe des WSDL2Java-Tools zu generieren.
Das klappte soweit auch, wie im Buch beschrieben erhielt ich den "SimpleHotelServiceStub.java".
Nun beschrieb mir das Buch wie ich einen Client erstelle der den erzeugten Stub aufruft.
Leider hörte direkt nach dem Code Beispiel das Buch auf den weiteren Weg zu beschreiben.
Auf der Apache-Seite fand ich dann jedoch noch etwas hilfe:
http://ws.apache.org/axis2/1_3/userguide-creatingclients.html#createclients
Dort fand ich den Hinweis, den Client.java in Verzeichniss des Stubs.java zu kopieren und dann die vom WSDL2JAVA-Tool mit generierte build.xml mit ant aufzurufen ("ant jar.client").

Dies führt er auch ohne probleme aus und beendet mit "build successful".
Dadurch wurde mir ein archive erstellt:

SimpleHotelService-test-client.jar

Nun heist es auf der offiziellen Axis2 Seite:
If you have a service corresponding to this client you can run the client by adding the jar file to your classpath and typing: java org.apache.axis2.axis2userguide.Client

das jar file hab ich zu meinem PATH geaddet und dann folgendes eingetippt:
java de.axishotels.client.gen.AxisHotelsClient
allerdings bekomme ich dann nur eine Exception:"java.lang.NoClassDefFoundError"

ich hab schon ne menge probiert aber ich bekomm den client nicht zum starten.

hier noch ein paar details zu meinem Project:

Unter eclipse hatte ich ein neues Project angelegt: "Axis Hotels"
/opt/eclipse_workspace/Axis Hotels/src/de/axishotels
(hier liegen die source-files für den Web Service)

/opt/eclipse_workspace/Axis Hotels/src/de/axishotels/client/gen
(hier liegt der AxisHotelClient.java )

/opt/GeneratedClient/
(hier liegt die build.xml für den SimpleHotelServiceStub.java, welche selber dann aber noch tiefer im Verzeichniss liegt: /opt/GeneratedClient/src/de/axishotels/client/gen/SimpleHotelServiceStub.java)

das erzeugte jar archive liegt unter:
/opt/GeneratedClient/build/lib/SimpleHotelService-test-client.jar

auszug aus der: .bashrc
export JAVA_HOME=/usr/lib/jvm/java-1.5.0-sun
export AXIS2_HOME=/opt/axis2-1.3
export JRE_HOME=/usr/lib/jvm/java-1.5.0-sun/jre
export CATALINA_HOME=/usr/share/tomcat5.5
export JETTY_HOME=/opt/jetty-6.1.9
export ECLIPSE_HOME=/opt/eclipse/
export CLASSPATH=usr/lib/jvm/java-1.5.0-sun/lib:/opt/GeneratedClient/build/lib
export CXF_HOME=/opt/apache-cxf-2.0-incubator
export MVN_HOME=/opt/apache-maven-2.0.9
export ANT_HOME=/opt/apache-ant-1.7.0
export PATH=$PATH:$JAVA_HOME/bin:$AXIS2_HOME/bin:$AXIS2_HOME/lib:/opt/apache-cxf-2.0-incubator/lib:$ANT_HOME/bin:$MVN_HOME/bin:/opt/GeneratedClient/build/lib

So ich hoffe ich hab die wichtigsten infos hier erstmal zusammen getragen.
Meine Frage: Wie starte ich den Client, wie auf der Apache-Axis2 Seite beschrieben funktioniert es irgendwie nicht, vielleicht liegt es auch daran das ich mit den Verzeichnissen vertue oder so k.a.

Ich bin für jede Hilfe dankbar ...

grüße
udo
 

Neue Beiträge

Zurück