Einzelnen Beitrag anzeigen

Benutzerbild von Phoenix
Phoenix
(Moderator)

Registriert seit: 25. Jun 2002
Ort: Hausach
7.611 Beiträge
 
#1

Webservice Aufruf debuggen?

  Alt 9. Dez 2008, 14:30
Hi.

Ich hab da ein mittelgroßes Problem.
Ich habe einen Webservice (namentlich die Microsoft SQL Server Reporting Services), den ich von einer Delphi 2009 Applikation aus Abfrage. Das ganze funktioniert einwandfrei.

Will ich das nun von Delphi 6 aus machen, so schmeisst mir der Webservice eine Exception dass ein Parameter nicht gefüllt oder NULL sei.

Folgendes schickt Delphi 6:
XML-Code:
<?xml version="1.0"?>
<SOAP-ENV:Envelope
  xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
  xmlns:xsd="http://www.w3.org/2001/XMLSchema"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/">
  
  <SOAP-ENV:Body SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
    <NS1:ListChildren xmlns:NS1="http://schemas.microsoft.com/sqlserver/2005/06/30/reporting/reportingservices">
      <Item xsi:type="xsd:string">/</Item>
      <Recursive xsi:type="xsd:boolean">true</Recursive>
    </NS1:ListChildren>
  </SOAP-ENV:Body>
</SOAP-ENV:Envelope>
Der Webserver meint, der Parameter 'Item' (also das, wo der Slash drinsteht), sei nicht da.

So sieht der Aufruf aus:
catitems := (HttpRio1 as ReportingService2005Soap).ListChildren('/', true); Und ich würde nun gerne mal beim 2009er das Soap angucken. Das läuft ja einwandfrei durch und ich würd mir gern mal den Unterschied angucken. Nur weiss ich nicht, wie ich dort da dran komme.

Bzw. hat wer direkt eine Idee die zur Lösung führen könnte?
Sebastian Gingter
Phoenix - 不死鳥, Microsoft MVP, Rettungshundeführer
Über mich: Sebastian Gingter @ Thinktecture Mein Blog: https://gingter.org
  Mit Zitat antworten Zitat