Dann Croghan
Re: WSDL - Cannot Unwrap issues [Edit]

Re: WSDL - Cannot Unwrap issues [Edit]


I did not get to spend much time on this yesterday but I did import the WSDL. And indeed I saw the headers. Here's what I got:
{code}   // ************************************************************************ //   // XML : MFETHeaderType, global, <complexType>   // Namespace :   // Info : Header   // ************************************************************************ //   MFETHeaderType2 = class(TSOAPHeader)   private     FUser: string;     FPassword: string;     FEnvironment: EnvironmentType;   published     property User: string Index (IS_NLBL) read FUser write FUser;     property Password: string Index (IS_NLBL) read FPassword write FPassword;     property Environment: EnvironmentType read FEnvironment write FEnvironment;   end;

  // ************************************************************************ //   // XML : MFETHeaderType, global, <element>   // Namespace :   // ************************************************************************ //   MFETHeaderType = class(MFETHeaderType2)   private   published   end;

  // ************************************************************************ //   // XML : MFETHeader, global, <element>   // Namespace :   // Info : Header   // ************************************************************************ //   MFETHeader = class(MFETHeaderType2)   private   published   end; {code}
NOTE: The importer is very verbose for what should have been just one type. However, it's because the WSDL used a global <element> that mapped to a global <complexType> ... when that happens the importer does not collapse the element and its type because something else could be referring to the type. (It's possible to walk the model and catch that nothing else is referring to the type except for the Header element and collapse; someday I'll get to that:).
And the importer also showed that the method expects the header:
{code}     // Headers: mvntHeader:pIn     function SubmissionListBySubmissionId(const SubmissionId: SubmissionId): SubmissionList; stdcall; {code}
The above is the part name. It would be best to emit the actually type of the part.
As soon as time allows I'll illustrate how to set the header. However, my main concern is that the error message you received does not have to do with missing the MFETHeader: rather, I think, it's because the service requires WS-Addressing (which is another header).
I'll expand more on that as soon as I get a chance.
FYI: Phrase searches are enclosed in either single or double quotes
Originally created by
Tamarack Associates
Tue, 28 May 2024 17:06:03 UTC
Copyright © 2009-2024
HREF Tools Corp.