axis-c-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Franz Fehringer (JIRA)" <>
Subject [jira] Commented: (AXISCPP-897) recent wsdl2ws generates wrong/inconsistent prototypes
Date Mon, 09 Jan 2006 13:27:50 GMT
    [ ] 

Franz Fehringer commented on AXISCPP-897:

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.

> recent wsdl2ws generates wrong/inconsistent prototypes
> ------------------------------------------------------
>          Key: AXISCPP-897
>          URL:
>      Project: Axis-C++
>         Type: Bug
>   Components: Client - Stub
>     Versions: 1.6 Alpha
>  Environment: W2KSP4 JDK 1.5.0_06
>     Reporter: Franz Fehringer
>  Attachments: SessionManagementPortType.cpp, SessionManagementPortType.hpp, durchstich.wsdl,
> With the latest SVN code i observe the following problem not present in the AxisC 1.5
> 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
> 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.

This message is automatically generated by JIRA.
If you think it was sent incorrectly contact one of the administrators:
For more information on JIRA, see:

View raw message