Erst einmal wünsche ich euch ein gesundes, erfolgreiches neues Jahr.
Ich möchte einen Webservice mit zwei Parametern im Intranet abfragen. Leider gelingt mir das nicht mit den üblichen
WSDL Funktionen (WSLD Import + Abfrage der bereitgestellten Funktionen). Daraufhin habe ich die Funktion ObjectToSOAP an einer anderen Testseite (Get location of
ip) erfolgreich testen können. Leider jedoch nicht wieder nicht bei dem Webservice, welchen ich abfragen möchte (liefert immer ein leeres Ergebnis zurück). Ich habe aber eine
HTML Datei, mit welcher die Abfrage funktioniert. Leider weiß ich nicht, welche Komponenten in delphi dafür verwendet werden müssten.
Nachfolgend der Code den ich bisher implementiert habe und der
HTML Code, mit dem es funktioniert.
Für jegliche Unterstützung wäre ich sehr dankbar!
Mein delphi Code bisher (liefert leider nur ein leeres Ergebnis zurück; funktioniert dafür aber bei der (get location of
ip webservice Abfrage)
procedure TForm11.Button1Click(Sender: TObject);
var
IP : Service1Soap;
BOM : SearchBOMResult;
ARootNode, ElemNode, NewNode: IXMLNode;
RefId : WideString;
begin
// NACH WDSL Import stheen neue
UNIT und Funktionen zur Anwendung zur Verfügung
try
IP := KZQBOM.GetService1Soap(FALSE);
except
showmessage('Connect to
WSDL failed');
end;
try
BOM :=
IP.SearchBOM(Edit1.Text,Edit2.text);
// LOS GEHTS
XMLDocument1.Active := TRUE;
with XMLDocument1 do
ARootNode := CreateNode('MyRemotable');
newNode := BOM.ObjectToSOAP(aRootNode,ARootNode,OPToSoapDomCo nvert1,'Test','Test',[],RefID );
XMLDocument1.DocumentElement := ARootNode;
XMLDocument1.encoding := 'UTF-8';
XMLDocument1.options := XMLDocument1.options+[doNodeAutoIndent];
Memo1.Lines.Clear;
Memo1.Lines.Add(XMLDocument1.XML.Text);
except on e :
exception
do showmessage(e.Message);
end;
end;
Mit diesem
HTML Code (siehe auch Anhang) gelingt die Abfrage über einen Webbrowser:
<
html>
<head><link rel="alternate" type="text/
xml" href="/kzq_bom_service/kzqbom.asmx?disco" />
<title>
Service1 Web testing
</title></head>
<body>
<form target="_blank" action='http://192.168.2.211/kzq_bom_service/kzqbom.asmx/SearchBOM' method="POST">
<table cellspacing="0" cellpadding="4" frame="box" bordercolor="#dcdcdc" rules="none" style="border-collapse: collapse;">
<tr>
<td class="frmHeader" background="#dcdcdc" style="border-right: 2px solid white;">Parameters</td>
<td class="frmHeader" background="#dcdcdc"> Input Value </td>
</tr>
<tr>
<td class="frmText" style="color: #000000; font-weight: normal;">jxCode:</td>
<td><input class="frmInput" type="text" size="50" name="jxCode"></td>
</tr>
<tr>
<td class="frmText" style="color: #000000; font-weight: normal;">date:</td>
<td><input class="frmInput" type="text" size="50" name="date"></td>
</tr>
<tr>
<td></td>
<td align="right"> <input type="submit" value="Submit" class="button"></td>
</tr>
</table>
</form>
</body>
</
html>