axis-c-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Franz Fehringer" <...@isogmbh.de>
Subject AW: recent wsdl2ws generates wrong/inconsistent prototypes
Date Mon, 09 Jan 2006 13:33:25 GMT


>  -----Ursprüngliche Nachricht-----
> Von: 	Franz Fehringer [mailto:feh@isogmbh.de] 
> Gesendet:	Montag, 9. Januar 2006 14:27
> An:	axis-c-user; Apache AXIS C Developers List
> Betreff:	AW: recent wsdl2ws generates wrong/inconsistent prototypes
> 
> A short investigation reveals that two problems where introduced with
> recent changes:
> *	The integer input parameters are now passed as pointers (perhaps for
> taking optional parameters into account).
> The person who implemented this forgot to adapt header file generation
> accordingly.
> *	For the output parameters one level of indirection (one
> star/asterisk) was added to the function definition in the source (.cpp).
> As can be seen from the implementation afterwards this is wrong.
> The declaration in the header file (same as in release 1.5) is correct.
> Correction: the header file declaration is wrong too (one level of
> indirection too much).
> Who is responsible and can take care of this havoc?
> 
> Greetings
> 
> Franz
> 
> 
> -----Ursprüngliche Nachricht-----
> Von: Franz Fehringer [mailto:feh@isogmbh.de]
> Gesendet: Dienstag, 3. Januar 2006 15:02
> An: axis-c-user; Apache AXIS C Developers List
> Betreff: recent wsdl2ws generates wrong/inconsistent prototypes
> 
> 
> Hello,
> 
> With the latest SVN code i observe the following problem not present in
> the AxisC 1.5 release:
> Using the attached WSDL method prototypes differ between header (.hpp) and
> source (.cpp) (also attached to this mail).
> More specifically, the input parameters are declared inconsistent, the
> output parameters consistent.
> The header reads
> void Login(t_Expiry Value0, t_Language Value1, t_PositiveInt Value2,
> t_Authentication* Value3, AXIS_OUT_PARAM t_Expiry ** OutValue0,
> AXIS_OUT_PARAM t_SessionToken ** OutValue1);
> The source reads
> void SessionManagementPortType::Login(xsd__int* Value0, xsd__string
> Value1, xsd__int* Value2, t_Authentication* Value3, AXIS_OUT_PARAM
> t_Expiry ** OutValue0, AXIS_OUT_PARAM t_SessionToken ** OutValue1)
> First in the header file for the input parameters typedefed types
> (t_Expiry ...) are used but typedefed to types (xsd__int ...) in the
> source file (maybe a cosmetic glitch but nevertheless not desirable).
> Second and more seriously the levels of indirection differ:
> With
> typedef xsd__int t_Expiry;
> typedef xsd__string t_Language;
> typedef xsd__int t_PositiveInt;
> the first parameter Value0 (for example) is an integer in the header but a
> pointer in the source.
> There is also an issue with the output parameters:
> OutValue1 is a t_SessionToken** in current SVN but a t_SessionToken* in
> release 1.5.
> Should i file a JIRA issue for this problem(s)?
> 
> Greetings
> 
> Franz
> 
> Dr. Franz Fehringer (Dipl. Math.)
> ____________________________________
> ISO Software Systeme
> Eichendorffstrasse 29
> 90491 Nürnberg
> Deutschland
> 
> Tel. : +49/(911) - 99594-0
> Fax  : +49/(911) - 99594-580
> 
> mailto:feh@isogmbh.de
> http://www.isogmbh.de

Mime
View raw message