You are viewing a plain text version of this content. The canonical link for it is here.
Posted to c-dev@axis.apache.org by "Franz Fehringer (JIRA)" <ax...@ws.apache.org> on 2006/01/18 08:54:49 UTC

[jira] Updated: (AXISCPP-903) extra ampersand in serializexxx methods

     [ http://issues.apache.org/jira/browse/AXISCPP-903?page=all ]

Franz Fehringer updated AXISCPP-903:
------------------------------------

    Attachment: vakanz.wsdl
                vakanz.xsd

> extra ampersand in serializexxx methods
> ---------------------------------------
>
>          Key: AXISCPP-903
>          URL: http://issues.apache.org/jira/browse/AXISCPP-903
>      Project: Axis-C++
>         Type: Bug
>     Versions: 1.6 Alpha
>  Environment: WIN2KSP4 JDK1.5.0_06 MSVC6SP6
>     Reporter: Franz Fehringer
>  Attachments: vakanz.wsdl, vakanz.xsd
>
> Both AxisC 1.5 and the upcoming 1.6 have issues with serializexxx methods in generated code.
> The point is that all data items are passed as void* (opaque pointers).
> Therefore integer items get an ampersand & applied in front like
> pSZ->serializeAsAttribute( "xsi:nil", 0, (void*)&(xsd_boolean_true), XSD_BOOLEAN);
> But string/char*/AxisChar* items are already pointers themselves, so no ampersand should be applied:
> pSZ->serializeAsAttribute("MatchType", 0, (void*)(param->MatchType), XSD_NMTOKEN);
> What can now observed with my example is that AxisC 1.5 does it wrong in two places:
> pSZ->serializeAsAttribute("MatchType", 0, (void*)&(param->MatchType), XSD_NMTOKEN);
> pSZ->serializeAsChardata((void*)&(param->t_OrgNameSearch_value), XSD_STRING);
> whereas AxisC 1.6 is right in the first and still wrong in the second case:
> pSZ->serializeAsAttribute("MatchType", 0, (void*)(param->MatchType), XSD_NMTOKEN);
> pSZ->serializeAsChardata((void*)&(param->t_OrgNameSearch_value), XSD_STRING);
> Note that the attached generated sources are from AxisC 1.6.
> AxisC 1.5 has other issues with the code in question (attributes of type XSD_NMTOKEN are not serialized at all; members of structs already out of scope are accessed), but these seem to be fixed with AxisC 1.6.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira