Live-Forum - Die aktuellen Beiträge
Datum
Titel
29.03.2024 13:14:12
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1576to1580
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Webservice mit wsdl-File

Webservice mit wsdl-File
02.09.2017 00:59:40
Joni
Hallo,
ich möchte einen Webservice umsetzen und komme leider nicht weiter. Der Service meldet immer eine falsche Anzahl an Parametern. Ich vermute es hat etwas mit dem Header zu tun. Mit unterschiedlichen Test-Tools kann ich Daten abfragen nur über Excel will es nicht. Bin für jede Hilfe dankbar.
Der Verweis auf die Microsoft Office Soap Type Library 3.0 und XML 6.0 ist gesetzt.
Code für den Aufruf

Sub WebService_SOAPCall1()
Dim sURL As String, oWebService As Object, vReturnValue As Variant
Dim sXML As String
On Error GoTo SOAPError
sURL = "http://www.thomas-bayer.com/axis2/services/BLZService?wsdl"
Set oWebService = New SoapClient30
oWebService.MSSoapInit (sURL)
sXML = TXT_ReadAll("B:\Bank.xml")
Debug.Print sXML
vReturnValue = oWebService.getBank(sXML)
Debug.Print vReturnValue
Exit Sub
SOAPError:
If oWebService.FaultString  "" Then
MsgBox "Fehler: " & oWebService.FaultString & "  " & oWebService.Detail
Else
MsgBox "Fehler: " & ERR.Description
End If
ERR.Clear
End Sub

Das XML schaut so aus
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:tns="http://thomas-bayer.com/blz/">
<soap:Body>
<tns:getBank>
<tns:blz>10050000</tns:blz>
</tns:getBank>
</soap:Body>
</soap:Envelope>
Der HTML-Header lt. Test-Tool so => ist aber in Excel vermutlich nicht enthalten
User-Agent: Crosscheck Networks SOAPSonar
Content-Type: text/xml; charset=utf-8
SOAPAction: ""
Content-Length: 373
Auch mit vReturnValue = oWebService.getBank("10050000") kriege ich die gleiche Fehlermeldung.
Bei http://www.webservicex.com/globalweather.asmx?wsdl funktioniert der Aufruf mit
vReturnValue = oWebService.GetCitiesByCountry("austria") mit Response-Daten und mit
vReturnValue = oWebService.GetCitiesByCountry(sXML) ohne Fehlermeldung aber ohne Daten?
XML dazu
<?xml version="1.0" encoding="UTF-8"?>
<Envelope xmlns="http://schemas.xmlsoap.org/soap/envelope/">
<Body>
<GetCitiesByCountry xmlns="http://www.webserviceX.NET">
<CountryName>austria</CountryName>
</GetCitiesByCountry>
</Body>
</Envelope>
Danke für eure Hilfe!
Gruß Joni

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Webservice mit wsdl-File
02.09.2017 10:57:11
Joni
Hier noch die Funktion um das XML einzlesen.
Public Function TXT_ReadAll(ByVal sFilePfadDateiname As String) As String
Dim sInhalt As String
Dim f As Integer
f = FreeFile
Open sFilePfadDateiname For Binary As #f
sInhalt = Space$(LOF(f))
Get #f, , sInhalt
Close #f
TXT_ReadAll = sInhalt
End Function

habe es mit cURL gelöst
04.09.2017 20:32:38
Joni
Falls noch jemand eine Lösung über VBA findet bitte gerne. Ich verwende jetzt cURL.
Gruß Joni

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige