|
| Import woes |
 |
Thu, 26 Jul 2007 09:26:30 -070 |
Please forgive me if this has already been answered. I spent half the night
poring over NG posts at www.tamaracka.com without finding an answer. Also,
I just subscribed to this NB in Outlook Express, and couldn't find anything
promising in the headers it downloaded.
A new client has asked us to create a small web client in Delphi 7. The
problem I'm having is with the WSDL Importer, both hte wizard build into the
IDE, and the command-line version. (I also tried it in Delphi 2006)
In the postings I studied, I discovered only one really useful tidbit - that
Code-Gear is still struggling with the WSDL importer in Delphi 2007!
Before I go farther I should mention that the WSDL importer in the .NET
Framework 2.0 SKD has no trouble at all with this WSDL. Also, after
creating a C++ MFC project in Visual Studio 2005, and adding a Web
Reference, it managed to import almost everything - but not quite. Something
stops it from creating the necessary .h file.
Here's the URL for the WSDL:
https://tmsqa1.rebt.com/tms/services/doc?wsdl
Here's a snippet of code generated by the Delphi importer:
//
************************************************************************ //
// The following types, referred to in the WSDL document are not being
represented
// in this file. They are either aliases[@] of other types represented or
were referred
// to but never[!] declared in the document. The types from the latter
category
// typically map to predefined/known XML or Borland types; however, they
could also
// indicate incorrect WSDL documents that failed to declare or import a
schema type.
//
************************************************************************ //
// !:getDocumentList - "http://relay.rebt.com/ws/doc"
// !:getDocumentListResponse - "http://relay.rebt.com/ws/doc"
// !:DocumentServiceFault - "http://relay.rebt.com/ws/doc"
// !:getDocumentVersionList - "http://relay.rebt.com/ws/doc"
// !:getDocumentVersionListResponse -
"http://relay.rebt.com/ws/doc"
// !:readDocumentVersion - "http://relay.rebt.com/ws/doc"
// !:readDocumentVersionResponse - "http://relay.rebt.com/ws/doc"
// !:addDocument - "http://relay.rebt.com/ws/doc"
// !:addDocumentResponse - "http://relay.rebt.com/ws/doc"
// !:addDocumentVersion - "http://relay.rebt.com/ws/doc"
// !:addDocumentVersionResponse - "http://relay.rebt.com/ws/doc"
---------------------------------------
This is the same problem generally reported on the NGs - the importer fails
to resolve one or more methods.
As a result, we get compiler errors in the following generated code:
DocumentService = interface(IInvokable)
['']
function getDocumentList(const parameters: getDocumentList):
getDocumentListResponse; stdcall;
function getDocumentVersionList(const parameters:
getDocumentVersionList): getDocumentVersionListResponse; stdcall;
function readDocumentVersion(const parameters: readDocumentVersion):
readDocumentVersionResponse; stdcall;
function addDocument(const parameters: addDocument):
addDocumentResponse; stdcall;
function addDocumentVersion(const parameters: addDocumentVersion):
addDocumentVersionResponse; stdcall;
end;
The DocumentService interface's functions all throw compiler errors on the
parameter (and return) types.
The one thing that jumped out at me as a potential troublemaker in the WSDL
is the reference to http://www.w3.org/2001/XMLSchema:
- <definitions xmlns:tns="http://relay.rebt.com/ws/doc"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
xmlns="http://schemas.xmlsoap.org/wsdl/"
targetNamespace="http://relay.rebt.com/ws/doc"
name="DocumentWebService">
If you go to www.w3.org/2001/XMLSchema, you'll see no XML at all - it's an
article. Could somebody explain the purpose of its presence in the WSDL?
My first thought was that w3.org had mesed up, and moved that page's former
content someplace else. But when I did a search in Microsoft's KB, I found
articles posted as late as this year in which Microsoft themselves use that
URL.
Suggestions, solutions anybody?
Thank you in advance.
Wes
|
| Post Reply
|
| Re: Import woes |
 |
Sun, 29 Jul 2007 10:26:25 -070 |
I've had problems with all versions of Delphi's WSDL importer, except
for the standalone, command-line WSDLImp.exe on Codegear. Search
CodeGear, download that and try it in a DOS box. make sure you first
run it as WSDLImp /? to get all the command line param options.
Don't know if this'll help you, but it costs nothing to try...
On Thu, 26 Jul 2007 09:26:30 -0700, "Wes Peterson" <wes at
prestwood
dot com> wrote:
>Please forgive me if this has already been answered. I spent half the night
>poring over NG posts at www.tamaracka.com without finding an answer. Also,
>I just subscribed to this NB in Outlook Express, and couldn't find anything
>promising in the headers it downloaded.
>
>A new client has asked us to create a small web client in Delphi 7. The
>problem I'm having is with the WSDL Importer, both hte wizard build into the
>IDE, and the command-line version. (I also tried it in Delphi 2006)
>
>In the postings I studied, I discovered only one really useful tidbit - that
>Code-Gear is still struggling with the WSDL importer in Delphi 2007!
>
>Before I go farther I should mention that the WSDL importer in the .NET
>Framework 2.0 SKD has no trouble at all with this WSDL. Also, after
>creating a C++ MFC project in Visual Studio 2005, and adding a Web
>Reference, it managed to import almost everything - but not quite. Something
>stops it from creating the necessary .h file.
>
>Here's the URL for the WSDL:
>https://tmsqa1.rebt.com/tms/services/doc?wsdl
>
>Here's a snippet of code generated by the Delphi importer:
>
> //
>************************************************************************ //
> // The following types, referred to in the WSDL document are not being
>represented
> // in this file. They are either aliases[@] of other types represented or
>were referred
> // to but never[!] declared in the document. The types from the latter
>category
> // typically map to predefined/known XML or Borland types; however, they
>could also
> // indicate incorrect WSDL documents that failed to declare or import a
>schema type.
> //
>************************************************************************ //
> // !:getDocumentList - "http://relay.rebt.com/ws/doc"
> // !:getDocumentListResponse - "http://relay.rebt.com/ws/doc"
> // !:DocumentServiceFault - "http://relay.rebt.com/ws/doc"
> // !:getDocumentVersionList - "http://relay.rebt.com/ws/doc"
> // !:getDocumentVersionListResponse -
"http://relay.rebt.com/ws/doc"
> // !:readDocumentVersion - "http://relay.rebt.com/ws/doc"
> // !:readDocumentVersionResponse -
"http://relay.rebt.com/ws/doc"
> // !:addDocument - "http://relay.rebt.com/ws/doc"
> // !:addDocumentResponse - "http://relay.rebt.com/ws/doc"
> // !:addDocumentVersion - "http://relay.rebt.com/ws/doc"
> // !:addDocumentVersionResponse -
"http://relay.rebt.com/ws/doc"
>
>---------------------------------------
>
>This is the same problem generally reported on the NGs - the importer fails
>to resolve one or more methods.
>
>As a result, we get compiler errors in the following generated code:
>
> DocumentService = interface(IInvokable)
> ['']
> function getDocumentList(const parameters: getDocumentList):
>getDocumentListResponse; stdcall;
> function getDocumentVersionList(const parameters:
>getDocumentVersionList): getDocumentVersionListResponse; stdcall;
> function readDocumentVersion(const parameters: readDocumentVersion):
>readDocumentVersionResponse; stdcall;
> function addDocument(const parameters: addDocument):
>addDocumentResponse; stdcall;
> function addDocumentVersion(const parameters: addDocumentVersion):
>addDocumentVersionResponse; stdcall;
> end;
>
>The DocumentService interface's functions all throw compiler errors on the
>parameter (and return) types.
>
>The one thing that jumped out at me as a potential troublemaker in the WSDL
>is the reference to http://www.w3.org/2001/XMLSchema:
>
>- <definitions xmlns:tns="http://relay.rebt.com/ws/doc"
>xmlns:xsd="http://www.w3.org/2001/XMLSchema"
>xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
>xmlns="http://schemas.xmlsoap.org/wsdl/"
>targetNamespace="http://relay.rebt.com/ws/doc"
name="DocumentWebService">
>
>If you go to www.w3.org/2001/XMLSchema, you'll see no XML at all - it's an
>article. Could somebody explain the purpose of its presence in the WSDL?
>
>My first thought was that w3.org had mesed up, and moved that page's former
>content someplace else. But when I did a search in Microsoft's KB, I found
>articles posted as late as this year in which Microsoft themselves use that
>URL.
>
>Suggestions, solutions anybody?
>
>Thank you in advance.
>
>Wes
|
| Post Reply
|
|
|
|
|
|
|
|
|
|