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 "Bill Mitchell (JIRA)" <ji...@apache.org> on 2007/12/27 22:57:43 UTC

[jira] Commented: (AXIS2C-847) WSDL stub for sequence of multiple type any fails to compile, refers to "axis2_array_list_t"

    [ https://issues.apache.org/jira/browse/AXIS2C-847?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12554619 ] 

Bill Mitchell commented on AXIS2C-847:
--------------------------------------

Thanks, Dimuthu.  I have verified this by rebuilding stubs with the latest nightly build.  

> WSDL stub for sequence of multiple type any fails to compile, refers to "axis2_array_list_t"
> --------------------------------------------------------------------------------------------
>
>                 Key: AXIS2C-847
>                 URL: https://issues.apache.org/jira/browse/AXIS2C-847
>             Project: Axis2-C
>          Issue Type: Bug
>          Components: code generation
>    Affects Versions: Current (Nightly)
>         Environment: Windows XP, Visual Studio 2005, guththila parser, libcurl, nightly build of WSDL2C in Axis2 Java from 12/19/07.  
>            Reporter: Bill Mitchell
>         Attachments: adb_instance_type2.c, adb_instance_type2.h, unrolled.wsdl
>
>
> Where an element contains an unbounded sequence of type any, the generated header file and source file for the element fails to compile, as they refer to a non-existent type "axis2_array_list_t".  Instead, they should use the type "axutil_array_list_t*".  
> To illustrate, for the response message below, WSDL2C generates a class adb_instance_type2 to represent the elements in the sequence in the response.  
>             <element name="browseResponse">
>                 <complexType>
>                     <complexContent>
>                         <restriction base="anyType">
>                             <sequence>
>                                 <element name="instance" minOccurs="0" maxOccurs="unbounded">
>                                     <complexType>
>                                         <sequence>
>                                             <any namespace="##local" minOccurs="1" maxOccurs="unbounded"/>
>                                         </sequence>
>                               `         <attribute name="handle" type="string" use="required"/>
>                                     </complexType>
>                                 </element>
>                             </sequence>
>                             <attribute name="responseCode" type="integer" use="optional" default="0"/>
>                             <attribute name="responseMessage" type="string" use="optional"/>
>                         </restriction>
>                     </complexContent>
>                 </complexType>
>             </element>
> The generated method for adb_instance_type2_get_extraElement_at() reads:
>         axis2_array_list_t AXIS2_CALL
>         adb_instance_type2_get_extraElement_at(
>                 adb_instance_type2_t* _instance_type2,
>                 const axutil_env_t *env, int i);
> This failure does not appear when the sequence of type any is declared with maxOccurs = 1, as the generated class can then return the single axiom_node_t directly:
>         axiom_node_t* AXIS2_CALL
>         adb_instance_type2_get_extraElement(
>             adb_instance_type2_t* _instance_type2,
>             const axutil_env_t *env);
> This failure affects the declarations of adb_<type>_get_extraElement_at(), adb_<type>_set_extraElement_at(), adb_<type>_add_extraElement(), and the code in the _get_extraElement_at() routine that refers to the return value.  As well the comments around adb_<type>_get_extraElement(), adb_<type>_set_extraElement().  

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: axis-c-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-c-dev-help@ws.apache.org