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 "Steve Hardy (JIRA)" <ax...@ws.apache.org> on 2004/12/20 15:39:16 UTC
[jira] Created: (AXISCPP-333) WSDL2ws doesn't handle complex Array types correctly when nested or when returning as AXIS_OUT_PARAM
WSDL2ws doesn't handle complex Array types correctly when nested or when returning as AXIS_OUT_PARAM
----------------------------------------------------------------------------------------------------
Key: AXISCPP-333
URL: http://nagoya.apache.org/jira/browse/AXISCPP-333
Project: Axis-C++
Type: Bug
Components: WSDL generation
Versions: current (nightly)
Environment: Tested on win32
Reporter: Steve Hardy
When returning an Array type as an AXIS_OUT_PARAM (a.k.a. when there is more than 1 return value), the wrong cast is used by WSDL2ws to cast to the return type ..
the following WSDL2ws generated uncompileable client-side code, due to the use of my defined cTypeArrayArray type (which does not exist in cpp namespace) instead of the cTypeArray_Array which WSDL2ws creates.
The cTypeArray_Array in turn, references "cTypeArray" instead of "cType_Array"
This problem also arises when there are no nested arrays in use.
<?xml version="1.0" encoding="UTF-8"?>
<wsdl:definitions targetNamespace="http://localhost/axis/test"
xmlns="http://schemas.xmlsoap.org/wsdl/"
xmlns:apachesoap="http://xml.apache.org/xml-soap"
xmlns:test="http://localhost/axis/test"
xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<wsdl:types>
<wsdl:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="http://localhost/axis/test">
<xs:import namespace = "http://schemas.xmlsoap.org/soap/encoding/"/>
<xs:complexType name="hiloType">
<xs:sequence>
<xs:element name="hi" type="xs:int"/>
<xs:element name="lo" type="xs:unsignedInt"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="cType">
<xs:sequence>
<xs:element name="a" type="xs:int"/>
<xs:element name="b" type="test:hiloType"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="cTypeArray">
<xs:complexContent>
<xs:restriction base="soapenc:Array">
<xs:attribute ref="soapenc:arrayType" wsdl:arrayType="test:cType[]"/>
</xs:restriction>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="cTypeArrayArray">
<xs:complexContent>
<xs:restriction base="soapenc:Array">
<xs:attribute ref="soapenc:arrayType" wsdl:arrayType="test:cTypeArray[]"/>
</xs:restriction>
</xs:complexContent>
</xs:complexType>
</wsdl:schema>
</wsdl:types>
<wsdl:message name="testRequest">
<wsdl:part name="a" type="xsd:int"/>
</wsdl:message>
<wsdl:message name="testResponse">
<wsdl:part name="b" type="xsd:int"/>
<wsdl:part name="result" type="test:cTypeArrayArray"/>
</wsdl:message>
<wsdl:portType name="test">
<wsdl:operation name="test" parameterOrder="a">
<wsdl:input message="test:testRequest" name="testRequest"/>
<wsdl:output message="test:testResponse" name="testResponse"/>
</wsdl:operation>
</wsdl:portType>
<wsdl:binding name="testBinding" type="test:test">
<wsdlsoap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http"/>
<wsdl:operation name="test">
<wsdl:input name="testRequest">
<wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://localhost/axis/test" use="encoded"/>
</wsdl:input>
<wsdl:output name="testResponse">
<wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://localhost/axis/test" use="encoded"/>
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
<wsdl:service name="test">
<wsdl:port binding="test:testBinding" name="test">
<wsdlsoap:address location="http://localhost/axis/test"/>
</wsdl:port>
</wsdl:service>
</wsdl:definitions>
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://nagoya.apache.org/jira/secure/Administrators.jspa
-
If you want more information on JIRA, or have a bug to report see:
http://www.atlassian.com/software/jira
[jira] Updated: (AXISCPP-333) WSDL2ws doesn't handle complex Array types correctly when nested or when returning as AXIS_OUT_PARAM
Posted by "Steve Hardy (JIRA)" <ax...@ws.apache.org>.
[ http://nagoya.apache.org/jira/browse/AXISCPP-333?page=history ]
Steve Hardy updated AXISCPP-333:
--------------------------------
Attachment: test.wsdl
Here is the same wsdl for easy access
> WSDL2ws doesn't handle complex Array types correctly when nested or when returning as AXIS_OUT_PARAM
> ----------------------------------------------------------------------------------------------------
>
> Key: AXISCPP-333
> URL: http://nagoya.apache.org/jira/browse/AXISCPP-333
> Project: Axis-C++
> Type: Bug
> Components: WSDL generation
> Versions: current (nightly)
> Environment: Tested on win32
> Reporter: Steve Hardy
> Attachments: test.wsdl
>
> When returning an Array type as an AXIS_OUT_PARAM (a.k.a. when there is more than 1 return value), the wrong cast is used by WSDL2ws to cast to the return type ..
> the following WSDL2ws generated uncompileable client-side code, due to the use of my defined cTypeArrayArray type (which does not exist in cpp namespace) instead of the cTypeArray_Array which WSDL2ws creates.
> The cTypeArray_Array in turn, references "cTypeArray" instead of "cType_Array"
> This problem also arises when there are no nested arrays in use.
> <?xml version="1.0" encoding="UTF-8"?>
> <wsdl:definitions targetNamespace="http://localhost/axis/test"
> xmlns="http://schemas.xmlsoap.org/wsdl/"
> xmlns:apachesoap="http://xml.apache.org/xml-soap"
> xmlns:test="http://localhost/axis/test"
> xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
> xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
> xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/"
> xmlns:xsd="http://www.w3.org/2001/XMLSchema">
> <wsdl:types>
> <wsdl:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="http://localhost/axis/test">
> <xs:import namespace = "http://schemas.xmlsoap.org/soap/encoding/"/>
> <xs:complexType name="hiloType">
> <xs:sequence>
> <xs:element name="hi" type="xs:int"/>
> <xs:element name="lo" type="xs:unsignedInt"/>
> </xs:sequence>
> </xs:complexType>
> <xs:complexType name="cType">
> <xs:sequence>
> <xs:element name="a" type="xs:int"/>
> <xs:element name="b" type="test:hiloType"/>
> </xs:sequence>
> </xs:complexType>
>
> <xs:complexType name="cTypeArray">
> <xs:complexContent>
> <xs:restriction base="soapenc:Array">
> <xs:attribute ref="soapenc:arrayType" wsdl:arrayType="test:cType[]"/>
> </xs:restriction>
> </xs:complexContent>
> </xs:complexType>
>
> <xs:complexType name="cTypeArrayArray">
> <xs:complexContent>
> <xs:restriction base="soapenc:Array">
> <xs:attribute ref="soapenc:arrayType" wsdl:arrayType="test:cTypeArray[]"/>
> </xs:restriction>
> </xs:complexContent>
> </xs:complexType>
>
> </wsdl:schema>
> </wsdl:types>
> <wsdl:message name="testRequest">
> <wsdl:part name="a" type="xsd:int"/>
> </wsdl:message>
> <wsdl:message name="testResponse">
> <wsdl:part name="b" type="xsd:int"/>
> <wsdl:part name="result" type="test:cTypeArrayArray"/>
> </wsdl:message>
> <wsdl:portType name="test">
> <wsdl:operation name="test" parameterOrder="a">
> <wsdl:input message="test:testRequest" name="testRequest"/>
> <wsdl:output message="test:testResponse" name="testResponse"/>
> </wsdl:operation>
> </wsdl:portType>
> <wsdl:binding name="testBinding" type="test:test">
> <wsdlsoap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http"/>
> <wsdl:operation name="test">
> <wsdl:input name="testRequest">
> <wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://localhost/axis/test" use="encoded"/>
> </wsdl:input>
> <wsdl:output name="testResponse">
> <wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://localhost/axis/test" use="encoded"/>
> </wsdl:output>
> </wsdl:operation>
> </wsdl:binding>
> <wsdl:service name="test">
> <wsdl:port binding="test:testBinding" name="test">
> <wsdlsoap:address location="http://localhost/axis/test"/>
> </wsdl:port>
> </wsdl:service>
> </wsdl:definitions>
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://nagoya.apache.org/jira/secure/Administrators.jspa
-
If you want more information on JIRA, or have a bug to report see:
http://www.atlassian.com/software/jira
[jira] Updated: (AXISCPP-333) WSDL2ws doesn't handle complex Array
types correctly when nested or when returning as AXIS_OUT_PARAM
Posted by "nadir amra (JIRA)" <ax...@ws.apache.org>.
[ https://issues.apache.org/jira/browse/AXISCPP-333?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
nadir amra updated AXISCPP-333:
-------------------------------
Comment: was deleted
> WSDL2ws doesn't handle complex Array types correctly when nested or when returning as AXIS_OUT_PARAM
> ----------------------------------------------------------------------------------------------------
>
> Key: AXISCPP-333
> URL: https://issues.apache.org/jira/browse/AXISCPP-333
> Project: Axis-C++
> Issue Type: Bug
> Components: WSDL processing - Doc, WSDL processing - RPC
> Affects Versions: current (nightly)
> Environment: Tested on win32
> Reporter: Steve Hardy
> Attachments: test.wsdl
>
>
> When returning an Array type as an AXIS_OUT_PARAM (a.k.a. when there is more than 1 return value), the wrong cast is used by WSDL2ws to cast to the return type ..
> the following WSDL2ws generated uncompileable client-side code, due to the use of my defined cTypeArrayArray type (which does not exist in cpp namespace) instead of the cTypeArray_Array which WSDL2ws creates.
> The cTypeArray_Array in turn, references "cTypeArray" instead of "cType_Array"
> This problem also arises when there are no nested arrays in use.
> <?xml version="1.0" encoding="UTF-8"?>
> <wsdl:definitions targetNamespace="http://localhost/axis/test"
> xmlns="http://schemas.xmlsoap.org/wsdl/"
> xmlns:apachesoap="http://xml.apache.org/xml-soap"
> xmlns:test="http://localhost/axis/test"
> xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
> xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
> xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/"
> xmlns:xsd="http://www.w3.org/2001/XMLSchema">
> <wsdl:types>
> <wsdl:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="http://localhost/axis/test">
> <xs:import namespace = "http://schemas.xmlsoap.org/soap/encoding/"/>
> <xs:complexType name="hiloType">
> <xs:sequence>
> <xs:element name="hi" type="xs:int"/>
> <xs:element name="lo" type="xs:unsignedInt"/>
> </xs:sequence>
> </xs:complexType>
> <xs:complexType name="cType">
> <xs:sequence>
> <xs:element name="a" type="xs:int"/>
> <xs:element name="b" type="test:hiloType"/>
> </xs:sequence>
> </xs:complexType>
>
> <xs:complexType name="cTypeArray">
> <xs:complexContent>
> <xs:restriction base="soapenc:Array">
> <xs:attribute ref="soapenc:arrayType" wsdl:arrayType="test:cType[]"/>
> </xs:restriction>
> </xs:complexContent>
> </xs:complexType>
>
> <xs:complexType name="cTypeArrayArray">
> <xs:complexContent>
> <xs:restriction base="soapenc:Array">
> <xs:attribute ref="soapenc:arrayType" wsdl:arrayType="test:cTypeArray[]"/>
> </xs:restriction>
> </xs:complexContent>
> </xs:complexType>
>
> </wsdl:schema>
> </wsdl:types>
> <wsdl:message name="testRequest">
> <wsdl:part name="a" type="xsd:int"/>
> </wsdl:message>
> <wsdl:message name="testResponse">
> <wsdl:part name="b" type="xsd:int"/>
> <wsdl:part name="result" type="test:cTypeArrayArray"/>
> </wsdl:message>
> <wsdl:portType name="test">
> <wsdl:operation name="test" parameterOrder="a">
> <wsdl:input message="test:testRequest" name="testRequest"/>
> <wsdl:output message="test:testResponse" name="testResponse"/>
> </wsdl:operation>
> </wsdl:portType>
> <wsdl:binding name="testBinding" type="test:test">
> <wsdlsoap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http"/>
> <wsdl:operation name="test">
> <wsdl:input name="testRequest">
> <wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://localhost/axis/test" use="encoded"/>
> </wsdl:input>
> <wsdl:output name="testResponse">
> <wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://localhost/axis/test" use="encoded"/>
> </wsdl:output>
> </wsdl:operation>
> </wsdl:binding>
> <wsdl:service name="test">
> <wsdl:port binding="test:testBinding" name="test">
> <wsdlsoap:address location="http://localhost/axis/test"/>
> </wsdl:port>
> </wsdl:service>
> </wsdl:definitions>
--
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
[jira] Commented: (AXISCPP-333) WSDL2ws doesn't handle complex
Array types correctly when nested or when returning as AXIS_OUT_PARAM
Posted by "Adrian Dick (JIRA)" <ax...@ws.apache.org>.
[ http://issues.apache.org/jira/browse/AXISCPP-333?page=comments#action_12367018 ]
Adrian Dick commented on AXISCPP-333:
-------------------------------------
I have recently resolved some problems in this area, can you try the latest nightly builds to confirm if this is still a problem.
> WSDL2ws doesn't handle complex Array types correctly when nested or when returning as AXIS_OUT_PARAM
> ----------------------------------------------------------------------------------------------------
>
> Key: AXISCPP-333
> URL: http://issues.apache.org/jira/browse/AXISCPP-333
> Project: Axis-C++
> Type: Bug
> Components: WSDL processing - RPC, WSDL processing - Doc
> Versions: current (nightly)
> Environment: Tested on win32
> Reporter: Steve Hardy
> Attachments: test.wsdl
>
> When returning an Array type as an AXIS_OUT_PARAM (a.k.a. when there is more than 1 return value), the wrong cast is used by WSDL2ws to cast to the return type ..
> the following WSDL2ws generated uncompileable client-side code, due to the use of my defined cTypeArrayArray type (which does not exist in cpp namespace) instead of the cTypeArray_Array which WSDL2ws creates.
> The cTypeArray_Array in turn, references "cTypeArray" instead of "cType_Array"
> This problem also arises when there are no nested arrays in use.
> <?xml version="1.0" encoding="UTF-8"?>
> <wsdl:definitions targetNamespace="http://localhost/axis/test"
> xmlns="http://schemas.xmlsoap.org/wsdl/"
> xmlns:apachesoap="http://xml.apache.org/xml-soap"
> xmlns:test="http://localhost/axis/test"
> xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
> xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
> xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/"
> xmlns:xsd="http://www.w3.org/2001/XMLSchema">
> <wsdl:types>
> <wsdl:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="http://localhost/axis/test">
> <xs:import namespace = "http://schemas.xmlsoap.org/soap/encoding/"/>
> <xs:complexType name="hiloType">
> <xs:sequence>
> <xs:element name="hi" type="xs:int"/>
> <xs:element name="lo" type="xs:unsignedInt"/>
> </xs:sequence>
> </xs:complexType>
> <xs:complexType name="cType">
> <xs:sequence>
> <xs:element name="a" type="xs:int"/>
> <xs:element name="b" type="test:hiloType"/>
> </xs:sequence>
> </xs:complexType>
>
> <xs:complexType name="cTypeArray">
> <xs:complexContent>
> <xs:restriction base="soapenc:Array">
> <xs:attribute ref="soapenc:arrayType" wsdl:arrayType="test:cType[]"/>
> </xs:restriction>
> </xs:complexContent>
> </xs:complexType>
>
> <xs:complexType name="cTypeArrayArray">
> <xs:complexContent>
> <xs:restriction base="soapenc:Array">
> <xs:attribute ref="soapenc:arrayType" wsdl:arrayType="test:cTypeArray[]"/>
> </xs:restriction>
> </xs:complexContent>
> </xs:complexType>
>
> </wsdl:schema>
> </wsdl:types>
> <wsdl:message name="testRequest">
> <wsdl:part name="a" type="xsd:int"/>
> </wsdl:message>
> <wsdl:message name="testResponse">
> <wsdl:part name="b" type="xsd:int"/>
> <wsdl:part name="result" type="test:cTypeArrayArray"/>
> </wsdl:message>
> <wsdl:portType name="test">
> <wsdl:operation name="test" parameterOrder="a">
> <wsdl:input message="test:testRequest" name="testRequest"/>
> <wsdl:output message="test:testResponse" name="testResponse"/>
> </wsdl:operation>
> </wsdl:portType>
> <wsdl:binding name="testBinding" type="test:test">
> <wsdlsoap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http"/>
> <wsdl:operation name="test">
> <wsdl:input name="testRequest">
> <wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://localhost/axis/test" use="encoded"/>
> </wsdl:input>
> <wsdl:output name="testResponse">
> <wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://localhost/axis/test" use="encoded"/>
> </wsdl:output>
> </wsdl:operation>
> </wsdl:binding>
> <wsdl:service name="test">
> <wsdl:port binding="test:testBinding" name="test">
> <wsdlsoap:address location="http://localhost/axis/test"/>
> </wsdl:port>
> </wsdl:service>
> </wsdl:definitions>
--
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
[jira] Commented: (AXISCPP-333) WSDL2ws doesn't handle complex Array types correctly when nested or when returning as AXIS_OUT_PARAM
Posted by "Dushshantha Chandradasa (JIRA)" <ax...@ws.apache.org>.
[ http://issues.apache.org/jira/browse/AXISCPP-333?page=comments#action_66729 ]
Dushshantha Chandradasa commented on AXISCPP-333:
-------------------------------------------------
It seems that we don't handle wsdl:arrayType in Axis C++. In privious cases where we handle arrays, we defined them in the wsdl file as an element with unbounded maxoccurs.
> WSDL2ws doesn't handle complex Array types correctly when nested or when returning as AXIS_OUT_PARAM
> ----------------------------------------------------------------------------------------------------
>
> Key: AXISCPP-333
> URL: http://issues.apache.org/jira/browse/AXISCPP-333
> Project: Axis-C++
> Type: Bug
> Components: WSDL processing - RPC, WSDL processing - Doc
> Versions: current (nightly)
> Environment: Tested on win32
> Reporter: Steve Hardy
> Attachments: test.wsdl
>
> When returning an Array type as an AXIS_OUT_PARAM (a.k.a. when there is more than 1 return value), the wrong cast is used by WSDL2ws to cast to the return type ..
> the following WSDL2ws generated uncompileable client-side code, due to the use of my defined cTypeArrayArray type (which does not exist in cpp namespace) instead of the cTypeArray_Array which WSDL2ws creates.
> The cTypeArray_Array in turn, references "cTypeArray" instead of "cType_Array"
> This problem also arises when there are no nested arrays in use.
> <?xml version="1.0" encoding="UTF-8"?>
> <wsdl:definitions targetNamespace="http://localhost/axis/test"
> xmlns="http://schemas.xmlsoap.org/wsdl/"
> xmlns:apachesoap="http://xml.apache.org/xml-soap"
> xmlns:test="http://localhost/axis/test"
> xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
> xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
> xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/"
> xmlns:xsd="http://www.w3.org/2001/XMLSchema">
> <wsdl:types>
> <wsdl:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="http://localhost/axis/test">
> <xs:import namespace = "http://schemas.xmlsoap.org/soap/encoding/"/>
> <xs:complexType name="hiloType">
> <xs:sequence>
> <xs:element name="hi" type="xs:int"/>
> <xs:element name="lo" type="xs:unsignedInt"/>
> </xs:sequence>
> </xs:complexType>
> <xs:complexType name="cType">
> <xs:sequence>
> <xs:element name="a" type="xs:int"/>
> <xs:element name="b" type="test:hiloType"/>
> </xs:sequence>
> </xs:complexType>
>
> <xs:complexType name="cTypeArray">
> <xs:complexContent>
> <xs:restriction base="soapenc:Array">
> <xs:attribute ref="soapenc:arrayType" wsdl:arrayType="test:cType[]"/>
> </xs:restriction>
> </xs:complexContent>
> </xs:complexType>
>
> <xs:complexType name="cTypeArrayArray">
> <xs:complexContent>
> <xs:restriction base="soapenc:Array">
> <xs:attribute ref="soapenc:arrayType" wsdl:arrayType="test:cTypeArray[]"/>
> </xs:restriction>
> </xs:complexContent>
> </xs:complexType>
>
> </wsdl:schema>
> </wsdl:types>
> <wsdl:message name="testRequest">
> <wsdl:part name="a" type="xsd:int"/>
> </wsdl:message>
> <wsdl:message name="testResponse">
> <wsdl:part name="b" type="xsd:int"/>
> <wsdl:part name="result" type="test:cTypeArrayArray"/>
> </wsdl:message>
> <wsdl:portType name="test">
> <wsdl:operation name="test" parameterOrder="a">
> <wsdl:input message="test:testRequest" name="testRequest"/>
> <wsdl:output message="test:testResponse" name="testResponse"/>
> </wsdl:operation>
> </wsdl:portType>
> <wsdl:binding name="testBinding" type="test:test">
> <wsdlsoap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http"/>
> <wsdl:operation name="test">
> <wsdl:input name="testRequest">
> <wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://localhost/axis/test" use="encoded"/>
> </wsdl:input>
> <wsdl:output name="testResponse">
> <wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://localhost/axis/test" use="encoded"/>
> </wsdl:output>
> </wsdl:operation>
> </wsdl:binding>
> <wsdl:service name="test">
> <wsdl:port binding="test:testBinding" name="test">
> <wsdlsoap:address location="http://localhost/axis/test"/>
> </wsdl:port>
> </wsdl:service>
> </wsdl:definitions>
--
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
[jira] Resolved: (AXISCPP-333) WSDL2ws doesn't handle complex Array
types correctly when nested or when returning as AXIS_OUT_PARAM
Posted by "nadir amra (JIRA)" <ax...@ws.apache.org>.
[ https://issues.apache.org/jira/browse/AXISCPP-333?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
nadir amra resolved AXISCPP-333.
--------------------------------
Resolution: Fixed
Fix Version/s: current (nightly)
> WSDL2ws doesn't handle complex Array types correctly when nested or when returning as AXIS_OUT_PARAM
> ----------------------------------------------------------------------------------------------------
>
> Key: AXISCPP-333
> URL: https://issues.apache.org/jira/browse/AXISCPP-333
> Project: Axis-C++
> Issue Type: Bug
> Components: WSDL processing - Doc, WSDL processing - RPC
> Affects Versions: current (nightly)
> Environment: Tested on win32
> Reporter: Steve Hardy
> Fix For: current (nightly)
>
> Attachments: test.wsdl
>
>
> When returning an Array type as an AXIS_OUT_PARAM (a.k.a. when there is more than 1 return value), the wrong cast is used by WSDL2ws to cast to the return type ..
> the following WSDL2ws generated uncompileable client-side code, due to the use of my defined cTypeArrayArray type (which does not exist in cpp namespace) instead of the cTypeArray_Array which WSDL2ws creates.
> The cTypeArray_Array in turn, references "cTypeArray" instead of "cType_Array"
> This problem also arises when there are no nested arrays in use.
> <?xml version="1.0" encoding="UTF-8"?>
> <wsdl:definitions targetNamespace="http://localhost/axis/test"
> xmlns="http://schemas.xmlsoap.org/wsdl/"
> xmlns:apachesoap="http://xml.apache.org/xml-soap"
> xmlns:test="http://localhost/axis/test"
> xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
> xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
> xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/"
> xmlns:xsd="http://www.w3.org/2001/XMLSchema">
> <wsdl:types>
> <wsdl:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="http://localhost/axis/test">
> <xs:import namespace = "http://schemas.xmlsoap.org/soap/encoding/"/>
> <xs:complexType name="hiloType">
> <xs:sequence>
> <xs:element name="hi" type="xs:int"/>
> <xs:element name="lo" type="xs:unsignedInt"/>
> </xs:sequence>
> </xs:complexType>
> <xs:complexType name="cType">
> <xs:sequence>
> <xs:element name="a" type="xs:int"/>
> <xs:element name="b" type="test:hiloType"/>
> </xs:sequence>
> </xs:complexType>
>
> <xs:complexType name="cTypeArray">
> <xs:complexContent>
> <xs:restriction base="soapenc:Array">
> <xs:attribute ref="soapenc:arrayType" wsdl:arrayType="test:cType[]"/>
> </xs:restriction>
> </xs:complexContent>
> </xs:complexType>
>
> <xs:complexType name="cTypeArrayArray">
> <xs:complexContent>
> <xs:restriction base="soapenc:Array">
> <xs:attribute ref="soapenc:arrayType" wsdl:arrayType="test:cTypeArray[]"/>
> </xs:restriction>
> </xs:complexContent>
> </xs:complexType>
>
> </wsdl:schema>
> </wsdl:types>
> <wsdl:message name="testRequest">
> <wsdl:part name="a" type="xsd:int"/>
> </wsdl:message>
> <wsdl:message name="testResponse">
> <wsdl:part name="b" type="xsd:int"/>
> <wsdl:part name="result" type="test:cTypeArrayArray"/>
> </wsdl:message>
> <wsdl:portType name="test">
> <wsdl:operation name="test" parameterOrder="a">
> <wsdl:input message="test:testRequest" name="testRequest"/>
> <wsdl:output message="test:testResponse" name="testResponse"/>
> </wsdl:operation>
> </wsdl:portType>
> <wsdl:binding name="testBinding" type="test:test">
> <wsdlsoap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http"/>
> <wsdl:operation name="test">
> <wsdl:input name="testRequest">
> <wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://localhost/axis/test" use="encoded"/>
> </wsdl:input>
> <wsdl:output name="testResponse">
> <wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://localhost/axis/test" use="encoded"/>
> </wsdl:output>
> </wsdl:operation>
> </wsdl:binding>
> <wsdl:service name="test">
> <wsdl:port binding="test:testBinding" name="test">
> <wsdlsoap:address location="http://localhost/axis/test"/>
> </wsdl:port>
> </wsdl:service>
> </wsdl:definitions>
--
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
[jira] Commented: (AXISCPP-333) WSDL2ws doesn't handle complex Array types correctly when nested or when returning as AXIS_OUT_PARAM
Posted by "Fred Preston (JIRA)" <ax...@ws.apache.org>.
[ http://issues.apache.org/jira/browse/AXISCPP-333?page=comments#action_12332001 ]
Fred Preston commented on AXISCPP-333:
--------------------------------------
Could the fixer of this JIRA either create a new or incorporate into an existing test a test that would create a for this function so that we do not regress?
> WSDL2ws doesn't handle complex Array types correctly when nested or when returning as AXIS_OUT_PARAM
> ----------------------------------------------------------------------------------------------------
>
> Key: AXISCPP-333
> URL: http://issues.apache.org/jira/browse/AXISCPP-333
> Project: Axis-C++
> Type: Bug
> Components: WSDL processing - RPC, WSDL processing - Doc
> Versions: current (nightly)
> Environment: Tested on win32
> Reporter: Steve Hardy
> Attachments: test.wsdl
>
> When returning an Array type as an AXIS_OUT_PARAM (a.k.a. when there is more than 1 return value), the wrong cast is used by WSDL2ws to cast to the return type ..
> the following WSDL2ws generated uncompileable client-side code, due to the use of my defined cTypeArrayArray type (which does not exist in cpp namespace) instead of the cTypeArray_Array which WSDL2ws creates.
> The cTypeArray_Array in turn, references "cTypeArray" instead of "cType_Array"
> This problem also arises when there are no nested arrays in use.
> <?xml version="1.0" encoding="UTF-8"?>
> <wsdl:definitions targetNamespace="http://localhost/axis/test"
> xmlns="http://schemas.xmlsoap.org/wsdl/"
> xmlns:apachesoap="http://xml.apache.org/xml-soap"
> xmlns:test="http://localhost/axis/test"
> xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
> xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
> xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/"
> xmlns:xsd="http://www.w3.org/2001/XMLSchema">
> <wsdl:types>
> <wsdl:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="http://localhost/axis/test">
> <xs:import namespace = "http://schemas.xmlsoap.org/soap/encoding/"/>
> <xs:complexType name="hiloType">
> <xs:sequence>
> <xs:element name="hi" type="xs:int"/>
> <xs:element name="lo" type="xs:unsignedInt"/>
> </xs:sequence>
> </xs:complexType>
> <xs:complexType name="cType">
> <xs:sequence>
> <xs:element name="a" type="xs:int"/>
> <xs:element name="b" type="test:hiloType"/>
> </xs:sequence>
> </xs:complexType>
>
> <xs:complexType name="cTypeArray">
> <xs:complexContent>
> <xs:restriction base="soapenc:Array">
> <xs:attribute ref="soapenc:arrayType" wsdl:arrayType="test:cType[]"/>
> </xs:restriction>
> </xs:complexContent>
> </xs:complexType>
>
> <xs:complexType name="cTypeArrayArray">
> <xs:complexContent>
> <xs:restriction base="soapenc:Array">
> <xs:attribute ref="soapenc:arrayType" wsdl:arrayType="test:cTypeArray[]"/>
> </xs:restriction>
> </xs:complexContent>
> </xs:complexType>
>
> </wsdl:schema>
> </wsdl:types>
> <wsdl:message name="testRequest">
> <wsdl:part name="a" type="xsd:int"/>
> </wsdl:message>
> <wsdl:message name="testResponse">
> <wsdl:part name="b" type="xsd:int"/>
> <wsdl:part name="result" type="test:cTypeArrayArray"/>
> </wsdl:message>
> <wsdl:portType name="test">
> <wsdl:operation name="test" parameterOrder="a">
> <wsdl:input message="test:testRequest" name="testRequest"/>
> <wsdl:output message="test:testResponse" name="testResponse"/>
> </wsdl:operation>
> </wsdl:portType>
> <wsdl:binding name="testBinding" type="test:test">
> <wsdlsoap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http"/>
> <wsdl:operation name="test">
> <wsdl:input name="testRequest">
> <wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://localhost/axis/test" use="encoded"/>
> </wsdl:input>
> <wsdl:output name="testResponse">
> <wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://localhost/axis/test" use="encoded"/>
> </wsdl:output>
> </wsdl:operation>
> </wsdl:binding>
> <wsdl:service name="test">
> <wsdl:port binding="test:testBinding" name="test">
> <wsdlsoap:address location="http://localhost/axis/test"/>
> </wsdl:port>
> </wsdl:service>
> </wsdl:definitions>
--
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
[jira] Updated: (AXISCPP-333) WSDL2ws doesn't handle complex Array types correctly when nested or when returning as AXIS_OUT_PARAM
Posted by "John Hawkins (JIRA)" <ax...@ws.apache.org>.
[ http://issues.apache.org/jira/browse/AXISCPP-333?page=all ]
John Hawkins updated AXISCPP-333:
---------------------------------
Component: WSDL processing - Doc
> WSDL2ws doesn't handle complex Array types correctly when nested or when returning as AXIS_OUT_PARAM
> ----------------------------------------------------------------------------------------------------
>
> Key: AXISCPP-333
> URL: http://issues.apache.org/jira/browse/AXISCPP-333
> Project: Axis-C++
> Type: Bug
> Components: WSDL processing - RPC, WSDL processing - Doc
> Versions: current (nightly)
> Environment: Tested on win32
> Reporter: Steve Hardy
> Attachments: test.wsdl
>
> When returning an Array type as an AXIS_OUT_PARAM (a.k.a. when there is more than 1 return value), the wrong cast is used by WSDL2ws to cast to the return type ..
> the following WSDL2ws generated uncompileable client-side code, due to the use of my defined cTypeArrayArray type (which does not exist in cpp namespace) instead of the cTypeArray_Array which WSDL2ws creates.
> The cTypeArray_Array in turn, references "cTypeArray" instead of "cType_Array"
> This problem also arises when there are no nested arrays in use.
> <?xml version="1.0" encoding="UTF-8"?>
> <wsdl:definitions targetNamespace="http://localhost/axis/test"
> xmlns="http://schemas.xmlsoap.org/wsdl/"
> xmlns:apachesoap="http://xml.apache.org/xml-soap"
> xmlns:test="http://localhost/axis/test"
> xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
> xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
> xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/"
> xmlns:xsd="http://www.w3.org/2001/XMLSchema">
> <wsdl:types>
> <wsdl:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="http://localhost/axis/test">
> <xs:import namespace = "http://schemas.xmlsoap.org/soap/encoding/"/>
> <xs:complexType name="hiloType">
> <xs:sequence>
> <xs:element name="hi" type="xs:int"/>
> <xs:element name="lo" type="xs:unsignedInt"/>
> </xs:sequence>
> </xs:complexType>
> <xs:complexType name="cType">
> <xs:sequence>
> <xs:element name="a" type="xs:int"/>
> <xs:element name="b" type="test:hiloType"/>
> </xs:sequence>
> </xs:complexType>
>
> <xs:complexType name="cTypeArray">
> <xs:complexContent>
> <xs:restriction base="soapenc:Array">
> <xs:attribute ref="soapenc:arrayType" wsdl:arrayType="test:cType[]"/>
> </xs:restriction>
> </xs:complexContent>
> </xs:complexType>
>
> <xs:complexType name="cTypeArrayArray">
> <xs:complexContent>
> <xs:restriction base="soapenc:Array">
> <xs:attribute ref="soapenc:arrayType" wsdl:arrayType="test:cTypeArray[]"/>
> </xs:restriction>
> </xs:complexContent>
> </xs:complexType>
>
> </wsdl:schema>
> </wsdl:types>
> <wsdl:message name="testRequest">
> <wsdl:part name="a" type="xsd:int"/>
> </wsdl:message>
> <wsdl:message name="testResponse">
> <wsdl:part name="b" type="xsd:int"/>
> <wsdl:part name="result" type="test:cTypeArrayArray"/>
> </wsdl:message>
> <wsdl:portType name="test">
> <wsdl:operation name="test" parameterOrder="a">
> <wsdl:input message="test:testRequest" name="testRequest"/>
> <wsdl:output message="test:testResponse" name="testResponse"/>
> </wsdl:operation>
> </wsdl:portType>
> <wsdl:binding name="testBinding" type="test:test">
> <wsdlsoap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http"/>
> <wsdl:operation name="test">
> <wsdl:input name="testRequest">
> <wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://localhost/axis/test" use="encoded"/>
> </wsdl:input>
> <wsdl:output name="testResponse">
> <wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://localhost/axis/test" use="encoded"/>
> </wsdl:output>
> </wsdl:operation>
> </wsdl:binding>
> <wsdl:service name="test">
> <wsdl:port binding="test:testBinding" name="test">
> <wsdlsoap:address location="http://localhost/axis/test"/>
> </wsdl:port>
> </wsdl:service>
> </wsdl:definitions>
--
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