HTTPRIO - verschil in Content-type ??
Ik zit met een vervelend probleem met HTTPRIO.
Een van de SOAP koppelingen die ik maak struikelt op een ESOAPHTTPException:
Quote:
Cannot process the message because the content type 'text/xml, charset='urf-8' was not the expected type 'application/soap-xml, charset=utf-8' (415)
gevolgd door de URL van de service.
Een andere koppeling (uiteraard andere service maar dezelfde informatie-leverancier) geen problemen geeft.
Basis voor beide koppelingen is dezelfde code:
Code:
procedure PrepareSoap(var myRIO: THTTPRIO, var URL: String, defauilt_URL: string) ;
myRIO := THTTPRIO.Create(nil);
myRIO.HTTPWebNode.OnBeforePost := x509Rio.BeforePost;
myRIO.OnAfterExecute := x509Rio.onAfterExecute;
myRIO.HTTPWebNode.Proxy := x509Proxy;
if ansileftstr(defaultURL,8) <> 'https://' then
URL := 'https://' + defaultURL
else
URL := defaultURL;
function Get_data(Vraagdata: RequestData; default_url: string): ResponseType;
var
MyLink : (interface uit WSDL)
MyRio: THTTPRIO;
Hetantwoord : Response-class;
DeVraag : Request-type;
begin
vul DeVraag in met gegevens uit Vraagdata;
if not PrepareSoap(myRIO, URL, vaste_URL) then
exit;
hetAntwoord := nil;
myLink := Service-Infnterface-functie (False, URL, myRIO);
retryCount := 0;
repeat
isTimeout := false;
try
begin
hetAntwoord := myLink.SOAP-functie(deVraag);
end;
except
on ex: Exception do
begin
uVerbindingsfout('Limnknaam', ex);
end;
end;
until not (isTimeout) or (retryCount >= 2);
Result := HetAntwoord;
end;
In de wsdl- en daarvan afgeleide .pas bestanden zie ik ook geen indicatie van de oorzaak.van dat verschil. Content-Type zal ergens omnder de motorkap ingevuld worden - in de code doe ik het in elk geval niet.
Waar komt dta vandaan en hoe los ik het op?