Hallo,
bitte helft mir bei folgendem Problem auf die Sprünge:
Wir haben einen Webservice, der bei Methoden sowohl für Parameter als auch für Return-Werte Arrays von einem eigenen Typen (im untigen wsdl-Beispiel: ArrayOfSoapTransferelement) verlangt.
Meine Aufgabe besteht nun im Entwickeln eines neuen Java-Clients, der diesen Webservice aufrufen soll.
(Dieser Webservice wird bereits von einem .NET-Client verwendet und funktioniert da tadellos; mit elementaren Datentypen, mit komplexen Datentypen ohne Arrays und mit Arrays aus elementaren Datentypen habe ich auch auf der Java-Seite keine (naja, kaum:smile: Probleme).
Mittels wsdl4Java (Version 1.0) habe ich zunächst Klassen generiert.
Es entstanden: SoapTransfercontainer.java und SoapTransferelement.java. (vgl. untigen wsdl-Auszug)
Mit WSIF/Axis (Apache-Projekt) habe ich versucht, den Webservice aufzurufen.
Dabei habe ich festgestellt, daß für ein TypeMapping noch die Klasse ArrayOfSoapTransferelement.java fehlt und daß ohne TypeMapping der Aufruf schief geht. („String[]“ als Parameter und Returnwert hat nach einigen Probieren schließlich bei dynamicCalls funktioniert).
Nun meinen Fragen:
wie rufe ich (WSIF ist kein MUß!) einen Webservice mit komplexen Array-Parameter und Returntype auf, d.h. welche OpenSource-Tools unterstützen das?
Oder: Müßte aus dem folgenden wsdl-File auch noch die Klasse ArrayOfSoapTransferelement.java generiert werden? Wenn ja, wie schaffe ich das?
Oder: Kennt jemand ein Beispiel, welches diese komplexen Arrays inklusive dem Webservice-Aufruf beinhaltet?
(Beim stundenlangen Googlen habe ich nur Beispiele für wsdls oder Aufrufe mit einfacheren Datentypen gefunden.)
Vielen Danke im voraus
Claudia
Auszug wsdl: