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:49:43 UTC

[jira] Reopened: (AXIS2C-848) Generated stub for unbounded sequence of type any does not pass any elements to client

     [ https://issues.apache.org/jira/browse/AXIS2C-848?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Bill Mitchell reopened AXIS2C-848:
----------------------------------


Thanks for addressing this, Dimuthu.  We are really close to this working.  When I tested the results in the nightly build, there remains one compilation error in the fix you installed.  In the loop in deserialize that detaches the nodes and adds them to the array, it declares a new variable current_property_node at the point that it needs to use it.  Unfortunately, as this is C code and not C++ code, the declaration needs to occur at the beginning of a block.  

The following is the fragment of code in question:
    axiom_node_t *current_property_node = current_node;
    current_node = axiom_node_get_next_sibling(current_node, env);
    axiom_node_detach(current_property_node, env);
    axutil_array_list_add_at(arr_list, env, i, (void*)current_property_node);

In the files I am attaching, you can see the complete context.  Either current_property_node needs to be declared at the start of this block, i.e., at the beginning of the for, or at the beginning of the deserialize function with all the other declarations.  


> Generated stub for unbounded sequence of type any does not pass any elements to client
> --------------------------------------------------------------------------------------
>
>                 Key: AXIS2C-848
>                 URL: https://issues.apache.org/jira/browse/AXIS2C-848
>             Project: Axis2-C
>          Issue Type: Bug
>          Components: code generation
>    Affects Versions: Current (Nightly)
>         Environment: Windows XP, Visual Studio 2005, guththila parser, libcurl, using WSDL2C from nightly build of 12/19/07
>            Reporter: Bill Mitchell
>            Assignee: Dimuthu Gamage
>         Attachments: adb_exemplar_type0.c, adb_exemplar_type0.orig.c, adb_exemplar_type0.single.c, case26.tar.gz, unrolled.wsdl
>
>
> Where a complexType is defined as an unbounded sequence of type any, as in the wsdl fragment below, the generated stub implements no code to handle the elements themselves, with the comment that it is "imposible to handle the request type - so please do it manually".  Yet, for the same sequence with a maxOccurs = 1, the generated stub is perfectly willing to return the single element of type any in a property of type axiom_node_t *, by detaching the node from the response document and making it a property of the stub object.  It would be useful and reasonable in the case of multiple any items to return an array of axiom_node_t*, by detaching each from the response message, as is done in the case of a single any element.  
>             <element name="getExemplarResponse">
>                 <complexType>
>                     <complexContent>
>                         <restriction base="anyType">
>                             <sequence>
>                                 <element name="exemplar" minOccurs="1" maxOccurs="1">
>                                     <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"/>
>                             <attribute name="supportedMethods" type="fw:MethodListType" use="optional"/>
>                         </restriction>
>                     </complexContent>
>                 </complexType>
>             </element>

-- 
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