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 "nadir amra (JIRA)" <ax...@ws.apache.org> on 2006/07/25 04:02:14 UTC

[jira] Closed: (AXISCPP-864) When a ComplexType is used within another ComplexType in a WSDL, the WSDL2Ws tool does not handle it correctly and does not produce a stub class for the inner type.

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

nadir amra closed AXISCPP-864.
------------------------------

    Fix Version/s:  1.6 Beta
       Resolution: Fixed

> When a ComplexType is used within another ComplexType in a WSDL, the WSDL2Ws tool does not handle it correctly and does not produce a stub class for the inner type.
> --------------------------------------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: AXISCPP-864
>                 URL: http://issues.apache.org/jira/browse/AXISCPP-864
>             Project: Axis-C++
>          Issue Type: Bug
>          Components: WSDL processing - Doc
>         Environment: n/a
>            Reporter: Fred Preston
>         Assigned To: nadir amra
>             Fix For:  1.6 Beta
>
>
> There are actually two related problems here, both produce the same sorts of problem.  Here is an extract from a WSDL...
> <xs:element name="Arguments">
>     <xs:complexType>
>         <xs:sequence>
>             <xs:element name="Argument" maxOccurs="unbounded">
>                 <xs:complexType>
>                     <xs:attribute name="Name" type="xs:string" use="required"/>
>                     <xs:attribute name="Value" type="xs:string" use="required"/>
>                 </xs:complexType>
>             </xs:element>
>         </xs:sequence>
>     </xs:complexType>
> </xs:element>
> When the stubs are created, the inner class (Arguement) is not created and only Arguments is.  This is also true for the following WSDL segment...
> <xs:element name="Request">
>     <xs:complexType>
>         <xs:sequence>
>             <xs:element name="IsValid" type="xs:string" minOccurs="0"/>
>             <xs:element name="ItemSearchRequest" type="tns:ItemSearchRequest" minOccurs="0"/>
>             <xs:element ref="tns:Errors" minOccurs="0"/>
>         </xs:sequence>
>     </xs:complexType>
> </xs:element>
> <xs:element name="Errors">
>     <xs:complexType>
>         <xs:sequence>
>             <xs:element name="Error" maxOccurs="unbounded">
>                 <xs:complexType>
>                     <xs:sequence>
>                         <xs:element name="Code" type="xs:string"/>
>                         <xs:element name="Message" type="xs:string"/>
>                     </xs:sequence>
>                 </xs:complexType>
>             </xs:element>
>         </xs:sequence>
>     </xs:complexType>
> </xs:element>
> The only way to correct this problem was to 'unwind' all of the embedded types as follows:-
> <xs:complexType name="Argument">
>     <xs:attribute name="Name" type="xs:string" use="required"/>
>     <xs:attribute name="Value" type="xs:string" use="required"/>
> </xs:complexType>
>         
> <xs:complexType name="Arguments">
>     <xs:sequence>
>         <xs:element name="Argument" type="tns:Argument" maxOccurs="unbounded"/>
>     </xs:sequence>
> </xs:complexType>
> and
> <xs:complexType name="Request">
>     <xs:sequence>
>         <xs:element name="IsValid" type="xs:string" minOccurs="0"/>
>         <xs:element name="ItemSearchRequest" type="tns:ItemSearchRequest" minOccurs="0"/>
>         <xs:element name="Errors" type="tns:Errors" minOccurs="0"/>
>     </xs:sequence>
> </xs:complexType>
> <xs:complexType name="Error">
>     <xs:sequence>
>         <xs:element name="Code" type="xs:string"/>
>         <xs:element name="Message" type="xs:string"/>
>     </xs:sequence>
> </xs:complexType>
>         
> <xs:complexType name="Errors">
>     <xs:sequence>
>         <xs:element name="Error" type="tns:Error" maxOccurs="unbounded"/>
>     </xs:sequence>
> </xs:complexType>

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

        

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