Log On
Embarcadero Home
Watch, Follow, &
Connect with Us
Share This
QualityCentral
Communities
Articles
Blogs
Resources
Downloads
Help
QualityCentral
Delphi-BCB
SOAP
Client Applications
Components
Interface
Interoperability
Server Applications
Transfers
UDDI
Wizards
WSDL Importer
WSDL Importer- BCB
WSDLImp.exe
You are not logged in.
Help
Print
Public Report
Report From:
Delphi-BCB/SOAP/WSDL Importer- BCB
[ Add a report in this area ]
Report #:
82855
Status:
Closed
C++ WSDL import generates non-working code
Project:
C++Builder
Build #:
14.0.3593.25826
Version:
14.0
Submitted By:
Christian Myksvoll
Report Type:
Basic functionality failure
Date Reported:
3/10/2010 12:27:07 AM
Severity:
Serious / Highly visible problem
Last Updated:
4/23/2013 8:21:16 AM
Platform:
All platforms
Internal Tracking #:
275442
Resolution:
Feature Removed
(Resolution Comments)
Resolved in Build:
:
XE4
Duplicate of:
None
Voting and Rating
Overall Rating:
No Ratings Yet
0.00 out of 5
Total Votes:
5
Description
When using a C++ imported WSDL class, the following webservice does NOT work correctly:
http://tsg-sim.telenor.no/TSG/services/TSGBasic?wsdl
When using a Delphi imported WSDL class, the same web service DOES work correctly.
Steps to Reproduce:
1) Import using C++ WSDL importer (use standard import settings):
http://tsg-sim.telenor.no/TSG/services/TSGBasic?wsdl
Add the generated C++ class to a clean VCL Forms Application project, include the generated header file add the following code in default form's constructor and run the program:
//------------------------------------
_di_TSGBasic tsgb = GetTSGBasic(false, "", 0);
//input values
String userId = "someUserId";
String password = "somePassword";
String appId = "someAppId";
//return values
ResponseType* response = 0;
String masterSession = "";
tsgb->login(userId, password, appId, response, masterSession);
//------------------------------------
The ResponseType pointer (response) should now point to a ResponseType object with the error message "Authentication failed". Instead the pointer is NULL. The same kind of error happens with other methods in the web service.
2) Now restart C++ Builder and import the WSDL again using the Delphi WSDL importer (make sure all projects are closed, select Component -> Import WSDL, choose Delphi as language, use standard import settings).
Remove the generated C++ class from the project, and add the generated Delphi class to the project instead.
Run the program. The response pointer now points to a ResponseType object with the expected error message. The other methods in the web service also works as expected (they depend on a successful login with a valid userId and password).
I have attached a zip file with a project that uses C++ imported WSDL and a project that uses Delphi imported WSDL.
Workarounds
Use Delphi WSDL importer instead of C++ WSDL importer.
Attachment
82855.zip
Comments
Tomohiro Takahashi at 3/12/2013 6:37:23 PM
-
This is a comment from internal tracking system.
<<<<<<<<
The wsdl/url no longer available.
>>>>>>>>
View Your Reports
Search
Server Response from: ETNACODE01
Developer Tools
Blackfish SQL
C++Builder
Delphi
FireMonkey
Prism
InterBase
JBuilder
J Optimizer
HTML5 Builder
3rdRail & TurboRuby
Database Tools
Change Manager
DBArtisan
DB Optimizer
ER/Studio
Performance Center
Rapid SQL
Technical Articles
Tutorials
White Papers
Press Releases
Newsletters
Add Content (GetPublished)
Audio
Audio & Video
Video
Bugs & Suggestions (QualityCentral)
Discussion Forums
Examples (CodeCentral)
Tags
Technology Partners
Downloads
Free Trials
Registered User Downloads
Beta Programs
Add Content (GetPublished)
Articles
Blogs
Bugs & Suggestions (QualityCentral)
Discussion Forums
Examples (CodeCentral)
Member Services
About
Connect with Us