So erstellt man mit Eclipse einen einfachen Web-Service

Da jetzt der Web-Service läuft und ein Client-Projekt erstellt wurde, muss eine neue Java-Klasse im Client-Projekt erzeugt werden, die mit dem Web-Service interagiert. Dies geschieht, indem man eine neue Java-Klasse innerhalb des erzeugten Axis2-Pakets erstellt, beispielsweise unter der Bezeichnung org.apache.ws.axis2. Diese neue Java-Klasse wird eine Hauptfunktion einnehmen, weil sie nach ihrer Fertigstellung als normale Java-Anwendung läuft. Man fügt folgenden Code ein:

Wie bereits erwähnt hat Eclipse beim Anlegen des Web-Service-Client-Projekts Axis2-Leerroutinen für die im Web-Service ausgeführten Methoden erstellt. Diese befinden sich in der Datei WSStub.java und müssen die Methode return_hash() enthalten, die nun eine eigene Klasse namens Return_hash bildet.

Um zu verstehen, welche Methoden man am besten verwendet, ist es ratsam, sich die Klassen-Methoden in Eclipse durchsehen. Dazu gibt man die Klasse ein und wartet nach der Eingabe der Zeichenfolge (.) einen Moment, damit Eclipse die Optionen festlegen kann. Ähnliches lässt sich aber auch in der Java-Klassendatei bewerkstelligen.

Führt man das Ganze als Java-Anwendung aus, sollte es eine Rückmeldung vom Web-Service auslösen. Diese wird in der Eclipse-Konsole angezeigt und liefert somit den Beweis, dass sie den Web-Service erfolgreich durchlaufen hat. Auf diese Weise wird also relativ einfach ein erster Web-Service erstellt.

Hinweis: Auf Mac-Rechnern, speziell unter dem Betriebssystem Leopard, scheint es einen Fehler im Parsing der Java-Option http.nonProxyHosts durch den Axis2 zu geben, wenn ein * enthalten ist. Das wird durch folgende Einstellung in den VM-Argumenten vermieden:


-Dhttp.nonProxyHosts=localhost

Weitere Informationen und Spezifikationen zu Web-Services sind beim World-Wide-Web-Konsortium (W3C) zu finden.

Fanden Sie diesen Artikel nützlich?
6 von 8 Lesern fanden diesen Artikel nützlich.

Lesermeinungen zum Artikel

 
von Joe
am 24. August 2009, 16:06 Uhr
Beim klicken auf Finish nach Create Webservice: "Selection must be WSDL"
Immer kommt dieser Fehler. Irgendjemand eine Idee?

Gruß,
Joe
 
von FreePali
am 15. April 2010, 15:19 Uhr
AW: Beim klicken auf Finish nach Create Webservice: "Selection must be WSDL"
Hallo,

Ich habe auch dasselbe Problem. Leider konnte ich es nicht lösen :-(

Hat jemand eine Idee wie man das löst?

LG
 
von Arno
am 4. Oktober 2009, 18:05 Uhr
Leider funktioniert es bei mir und Eclipse Galileo nicht komplett
Wenn ich den Webservice erzeuge, erstellt Eclipse in der Standardeinstellung leider gar kein Axis Verzeichnis, in dem ich einen Client unterbringen könnte.

Damit fehlt dann auch die Klasse WSStub.java, ohne die ich den Client nicht bauen kann.

Muss man auf irgendwas achten?
 
von aeroPLAN
am 15. September 2010, 14:40 Uhr
WSDL error
Ich hab das Problem folgendermassen gelöst. Bei dem Erzeugen des Clients bin ich stufenweise vorgegangen: zuerst den Client als Development generiert, Dann Installation biz zum Starten.

Schöne Grüße

PlaN