Einzelnen Beitrag anzeigen

danielA

Registriert seit: 10. Jun 2002
Ort: Hamburg
72 Beiträge
 
Delphi XE7 Enterprise
 
#1

SOAP: wsdl enthält Gleichnamige Schlüssel mit unterschiedlicher Definition

  Alt 8. Jul 2016, 15:19
Hallo Liebe Delphigemeinde,

ich habe eine wsdl- Datei erhalten, für welche ein Client implementiert werden soll.
Ich habe derzeit keinen Zugriff auf den Server, welcher das dann tatsächlich ausführen soll, deshalb kann ich nicht "real" testen, sondern nur mit meinem eigens implementierten Server.

Die Implementierung der Schnittstelle ist soweit auch abgeschlossen, ich habe jedoch ein Problem mit einem Datentyp.

Delphi-Quellcode:
  IMEINInterface = interface(IInvokable)
  ['{C02AF8D7-960D-49A0-BCDE-BCB2EF73E8AC}']
    function MeineMethode(const Abfrage: TAbfrage): TAntwort; stdcall;
  end;
Soweit alles in Ordnung.
Jetzt habe ich aber das Problem, dass in den Klassen TAbfrage und TAntwort jeweils ein property vom Typ TWerte enthalten ist. Die Propertys von TWerte unterscheiden sich aber gänzlich. Mir ist klar, dass ich bei der Registrierung der WSDL-Typen Umbenennungen vornehmen kann. Dennoch müßte dann ja z.B. sowas gemacht werden.

Delphi-Quellcode:

initialization

  ...
  RemClassRegistry.RegisterXSClass(TWerteAbfrage, 'urn:IMEINInterfaceServiceIntf', 'TWerteAbfrage', 'TWerte');
  RemClassRegistry.RegisterXSClass(TWerteAntwort, 'urn:IMEINInterfaceServiceIntf', 'TWerteAntwort', 'TWerte');
  ...
end.
So kann ich zwar innerhalb Delphi's die Definitionen trennen aber schafft RegisterXSClass tatsächlich die Verlinkung auf das Richtige Unterelment?

Vielen Dank und Gruß,

Daniel
  Mit Zitat antworten Zitat