|
| turbo delphi wsdl importer did not import all classes or datatypes |
 |
17 May 2007 06:26:20 -0700 |
I was trying to use SOAP application by importing WSDL from turbo delphi, but
from the wsdl I imported seems like turbo delphi only import part of it.
I tried the same thing using VB, and VB imported every single class inside the
WSDL.
My question is, is wsdl importer on Turbo Delphi limited in someway, and is
there a fix for it?
|
| Post Reply
|
| Re: turbo delphi wsdl importer did not import all classes or datatypes |
 |
Thu, 24 May 2007 20:02:33 -070 |
Hello Abe,
The importer (Turbo and non-turbo version) will only generate bindings for
types that it deemed are being used. Sometimes this logic is incorrect (the
main issue is when derived types are involved - no one makes explicit
reference to them but they can be used wherever a base type is expected).
You can configure the importer to emit all types. The -Ot+ enables this
feature on the command line importer. In the IDE enable the "Output unused
types" checkbox.
Let me know if the above does not solve the problem.
Cheers,
Bruneau.
|
| Post Reply
|
| Re: turbo delphi wsdl importer did not import all classes or datatypes |
 |
25 May 2007 07:37:21 -0700 |
Sorry for the problem, Just found out that there's an option on WSDL importer
that opens up a tabbed form
and under "other option" tab there's a checkbox that said "Do not
Emit unused types"
when that checkbox is unchecked, it will give out the missing types i needed.
I'm not sure what decide "used" or "unused" types though
"abe" <abe_miaw@yahoo.com> wrote:
>
>I was trying to use SOAP application by importing WSDL from turbo delphi,
but from the wsdl I imported seems like turbo delphi only import part of it.
>
>I tried the same thing using VB, and VB imported every single class inside
the WSDL.
>
>My question is, is wsdl importer on Turbo Delphi limited in someway, and is
there a fix for it?
>
>any help is greatly appreciated. and if needed be, I can post what's inside
the wsdl. I refrain from doing that, because it is fairly long (lots of
classes)
|
| Post Reply
|
| Re: turbo delphi wsdl importer did not import all classes or datatypes |
 |
Wed, 30 May 2007 12:01:17 -070 |
Hello Abe,
The importer determines if a type is used by seeing if it's directly or
indirectly used as parameter (i.e. part) of an operation, or if it's a
header or exception type of an operation. Indirect usage would be the case
where a parameter type contains a member of another type that contains a
member of yet another type... all of these types are them marked as used.
As mentioned in my previous post, this logic has worked well except in two
cases:
1. Inheritance
2. Type with elements with default values
In the cases above, the complex type may not be directly or indirectly used
but it's still useful to emit them. I've tweaked the importer to cater for
#1. Since we don't emit default values, I have not enabled #2 yet but it's
on the list of items I want to remedy.
Cheers,
Bruneau.
|
| Post Reply
|
|
|
|
|
|
|
|
|
|