Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Fixed
-
1.5 Final
-
None
-
Linux
Description
WSDL2Ws can't handle complexTypes.
With this wsdl:
=============================
<?xml version="1.0" encoding="UTF-8"?>
<definitions
name="PruebasBug"
targetNamespace="http://www.abysal.com/soap/PruebasBug.wsdl"
xmlns="http://schemas.xmlsoap.org/wsdl/"
xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
xmlns:tns="http://www.abysal.com/soap/PruebasBug.wsdl"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<types>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="PruebaDatosCabecera">
<xs:complexType>
<xs:sequence>
<xs:element name="IdenOrgNac" type="xsd:string"/>
<xs:element name="NumSec" type="xsd:string"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
</types>
<message name="PruebasBugInput">
<part name="PruebasBugId" element="tns:PruebaDatosCabecera"></part>
</message>
<message name="PruebasBugResponse">
<part name="PruebasBugReturn" type="xsd:int"></part>
</message>
<portType name="PruebasBugPortType">
<operation name="AbySend" parameterOrder="PruebasBugId">
<input message="tns:PruebasBugInput"/>
<output message="tns:PruebasBugResponse"/>
</operation>
</portType>
<binding name="PruebasBugBinding" type="tns:PruebasBugPortType">
<soap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http"/>
<operation name="AbySend">
<soap:operation soapAction=""/>
<input>
<soap:body
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
namespace="http://www.abysal.com/Abysal-webDTP"
use="encoded"/>
</input>
<output>
<soap:body
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
namespace="http://www.abysal.com/Abysal-webDTP"
use="encoded"/>
</output>
</operation>
</binding>
<service name="PruebasBugService">
<port binding="tns:PruebasBugBinding" name="PruebasBugPort">
<soap:address location="http://aries:8080/axis/services/PruebasBug"/>
</port>
</service>
</definitions>
===================================
the result for client is in verbose mode:
---------
>PruebaDatosCabecera------------
languageSpecificName = >PruebaDatosCabecera
isArray =false
Elements[
,java.util.Hashtable$Enumerator@1549f94>PruebaDatosCabecera>IdenOrgNac,
string| max = 1 min =1|)
,java.util.Hashtable$Enumerator@1549f94>PruebaDatosCabecera>NumSec,
{http://www.w3.org/2001/XMLSchema}string| max = 1 min =1|)
]
Attributes[
]
------------------------------------------------------
xsd__intLanguageName ....................
Output Parameter type Name :xsd__int
/home/jaa/axisc++/pruebas/pp/PruebasBugPortType.cpp created.....
/home/jaa/axisc++/pruebas/pp/PruebasBugPortType.hpp created.....
ignoring anonymous type >PruebaDatosCabecera
Code generation completed.
The file .hpp generated is:
/*
- This file was auto-generated by the Axis C++ Web Service Generator (WSDL2Ws)
- This file contains Client Stub Class for remote web service
*/
#if !defined(_PRUEBASBUGPORTTYPE_CLIENTSTUB_HINCLUDED)
#define _PRUEBASBUGPORTTYPE_CLIENTSTUB_HINCLUDED
#include <axis/client/Stub.hpp>
#include <axis/SoapFaultException.hpp>
#include <axis/ISoapFault.hpp>
AXIS_CPP_NAMESPACE_USE
class PruebasBugPortType :public Stub
{
public:
STORAGE_CLASS_INFO PruebasBugPortType(const char* pchEndpointUri, AXIS_PROTOCOL_TYPE eProtocol=APTHTTP1_1);
STORAGE_CLASS_INFO PruebasBugPortType();
public:
STORAGE_CLASS_INFO virtual ~PruebasBugPortType();
public:
STORAGE_CLASS_INFO xsd__int AbySend(>PruebaDatosCabecera* Value0);
};
#endif /* !defined(_PRUEBASBUGPORTTYPE_CLIENTSTUB_HINCLUDED)*/
What ">PruebasDatosCabecera" means?
Thanks...