Details
-
Bug
-
Status: Open
-
Critical
-
Resolution: Unresolved
-
1.5.6
-
None
-
Windows 7.
Description
Hi,
We have valid wsdl document:
- validated with XMLSpy editor
- there is no problem to build client stab using Apache CXF or gSoap.
We try to build client stab with different options of axis2-1.5.6 wsdl2java
- axis2-1.5.6\bin>wsdl2java.bat -a -d jibx -u -uri PushIntRoamingTariffList.1.Concrete.wsdl
More than one element part is not allwed in document literal type binding operation
We receive following WSDLProcessingException exception:
WSDL11ToAxisServiceBuilder$WSDLProcessingException: More than one element part is not allwed in document literal type binding operation PushIntRoamingTariffList.1
Here is wsdl we use:
<?xml version="1.0" encoding="UTF-8"?>
<!-Created by TIBCO WSDL->
<wsdl:definitions xmlns:ns0="http://xmlns.kpn.com/mobile/m2c/cdm/pushintroamingtarifflist.1request.xsd" xmlns:ns1="http://xmlns.kpn.com/mobile/m2c/cdm/pushintroamingtarifflist.1response.xsd" xmlns:ns2="http://xmlns.kpn.com/mobile/m2c/cdm/sml/envelope.1" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:tns="http://xmlns.kpn.com/mobile/m2c/cdm/sml/pushintroamingtarifflist.1/PushIntRoamingTariffList.1Impl" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" name="Untitled" targetNamespace="http://xmlns.kpn.com/mobile/m2c/cdm/sml/pushintroamingtarifflist.1/PushIntRoamingTariffList.1Impl">
<wsdl:types>
<schema xmlns="http://www.w3.org/2001/XMLSchema" xmlns:ns="http://xmlns.kpn.com/mobile/m2c/cdm/pushintroamingtarifflist.1request.xsd" xmlns:sml="http://xmlns.kpn.com/mobile/m2c/cdm/sml/envelope.1" xmlns:xsd="http://www.w3.org/2001/XMLSchema" attributeFormDefault="qualified" elementFormDefault="qualified" targetNamespace="http://xmlns.kpn.com/mobile/m2c/cdm/pushintroamingtarifflist.1request.xsd">
<import namespace="http://xmlns.kpn.com/mobile/m2c/cdm/sml/envelope.1"/>
<complexType name="MOBILE_CONNECTION">
<sequence>
<element name="MSISDN" type="ns:TelecomNumberDetailed"/>
</sequence>
</complexType>
<simpleType name="NEString">
<annotation>
<documentation>Not Empty String</documentation>
</annotation>
<restriction base="xsd:string">
<minLength value="1"/>
</restriction>
</simpleType>
<complexType name="NETWORK_OPERATOR">
<sequence>
<element name="ID_MCC_MNC" type="ns:NEString"/>
</sequence>
</complexType>
<complexType name="TelecomNumberDetailed">
<simpleContent>
<extension base="ns:NEString">
<attribute form="qualified" name="area" type="ns:NEString" use="required"/>
<attribute form="qualified" name="country" type="ns:NEString" use="required"/>
<attribute form="qualified" name="subscriber" type="ns:NEString" use="required"/>
</extension>
</simpleContent>
</complexType>
<element name="PushIntRoamingTariffListRequest">
<complexType>
<sequence>
<element name="Header">
<complexType>
<complexContent>
<extension base="sml:Header"/>
</complexContent>
</complexType>
</element>
<element name="Body">
<complexType>
<complexContent>
<extension base="sml:Body">
<sequence>
<element ref="ns:Request"/>
</sequence>
</extension>
</complexContent>
</complexType>
</element>
</sequence>
</complexType>
</element>
<element name="Request">
<complexType>
<sequence>
<element name="MOBILE_CONNECTION" type="ns:MOBILE_CONNECTION"/>
<element name="NETWORK_OPERATOR" type="ns:NETWORK_OPERATOR"/>
</sequence>
</complexType>
</element>
</schema>
<schema xmlns="http://www.w3.org/2001/XMLSchema" xmlns:sml="http://xmlns.kpn.com/mobile/m2c/cdm/sml/envelope.1" xmlns:xsd="http://www.w3.org/2001/XMLSchema" attributeFormDefault="qualified" elementFormDefault="qualified" targetNamespace="http://xmlns.kpn.com/mobile/m2c/cdm/sml/envelope.1">
<complexType name="Body"/>
<complexType name="ConnectionInfo">
<sequence>
<element minOccurs="0" name="CPAId" type="xsd:string"/>
<element minOccurs="0" name="ExternalRefToMessageId" nillable="true" type="xsd:string"/>
<element minOccurs="0" name="Principal" type="xsd:string"/>
<element minOccurs="0" name="Credentials" type="xsd:string"/>
<element minOccurs="0" name="Signature" type="xsd:string"/>
<element minOccurs="0" name="RemoteAddress" type="xsd:string"/>
</sequence>
</complexType>
<complexType name="Detail">
<sequence>
<element maxOccurs="unbounded" minOccurs="0" name="SpecificError" type="sml:SpecificError"/>
</sequence>
</complexType>
<complexType name="Error">
<sequence>
<element name="Code" type="xsd:string"/>
<element name="Reason" type="xsd:string"/>
<element minOccurs="0" name="Service" type="sml:Service"/>
<element minOccurs="0" name="Detail" type="sml:Detail"/>
</sequence>
</complexType>
<complexType name="ErrorList">
<sequence>
<element minOccurs="0" name="Error" type="sml:Error"/>
</sequence>
</complexType>
<complexType name="From">
<sequence>
<element name="PartyId" type="sml:PartyId"/>
<element minOccurs="0" name="Location" type="xsd:string"/>
</sequence>
</complexType>
<complexType name="Header">
<sequence>
<element ref="sml:MessageHeader"/>
<element minOccurs="0" ref="sml:TraceHeaderList"/>
<element minOccurs="0" ref="sml:ErrorList"/>
<element minOccurs="0" ref="sml:TransactionList"/>
</sequence>
</complexType>
<complexType name="HeaderFields">
<sequence>
<element minOccurs="0" name="ConversationId" type="xsd:string"/>
<element minOccurs="0" name="MessageId" type="xsd:string"/>
<element minOccurs="0" name="Timestamp" type="xsd:dateTime"/>
<element minOccurs="0" name="HeaderProperties" type="sml:HeaderProperties"/>
</sequence>
</complexType>
<complexType name="HeaderProperties">
<sequence>
<element maxOccurs="unbounded" minOccurs="0" name="HeaderProperty" type="sml:HeaderProperty"/>
</sequence>
</complexType>
<complexType name="HeaderProperty">
<attribute form="qualified" name="Name" type="xsd:string" use="required"/>
<attribute form="qualified" name="Value" type="xsd:string" use="required"/>
</complexType>
<complexType name="MessageData">
<sequence>
<element name="MessageId" type="xsd:string"/>
<element name="Timestamp" type="xsd:dateTime"/>
<element minOccurs="0" name="RefToMessageId" type="xsd:string"/>
</sequence>
</complexType>
<complexType name="MessageHeader">
<sequence>
<element name="From" type="sml:From"/>
<element name="To" type="sml:To"/>
<element name="HeaderFields" type="sml:HeaderFields"/>
<element name="ConnectionInfo" type="sml:ConnectionInfo"/>
<element name="Service" type="sml:Service"/>
<element minOccurs="0" name="QualityOfServiceInfo" type="sml:QualityOfServiceInfo"/>
<element minOccurs="0" name="TimeToLive" type="xsd:dateTime"/>
<element minOccurs="0" name="Description" type="sml:Text"/>
</sequence>
<attribute form="qualified" name="version" type="xsd:string" use="required"/>
</complexType>
<complexType name="PartyId">
<simpleContent>
<extension base="xsd:string">
<attribute form="qualified" name="type" type="xsd:string"/>
</extension>
</simpleContent>
</complexType>
<complexType name="QualityOfServiceInfo">
<sequence>
<element minOccurs="0" name="SequenceNumber" type="sml:SequenceNumber"/>
<element minOccurs="0" name="DuplicateElimination" type="xsd:anyType"/>
</sequence>
<attribute form="qualified" name="deliveryReceiptRequest" type="xsd:string"/>
</complexType>
<complexType name="Result">
<sequence>
<element name="Status" type="sml:ResultStatus"/>
<element minOccurs="0" name="Fault" type="sml:Error"/>
</sequence>
</complexType>
<simpleType name="ResultStatus">
<restriction base="xsd:string">
<enumeration value="OK"/>
<enumeration value="ERROR"/>
</restriction>
</simpleType>
<complexType name="SequenceNumber">
<simpleContent>
<extension base="xsd:integer">
<attribute form="qualified" name="finalMessage" type="xsd:boolean" use="required"/>
<attribute form="qualified" name="status" type="xsd:string" use="required"/>
</extension>
</simpleContent>
</complexType>
<complexType name="Service">
<sequence>
<element name="Paradigm" type="xsd:string"/>
<element name="Name" type="xsd:string"/>
<element minOccurs="0" name="Version" type="xsd:string"/>
<element minOccurs="0" name="Action" type="xsd:string"/>
</sequence>
</complexType>
<complexType name="SpecificError">
<sequence>
<element name="Code" type="xsd:string"/>
<element minOccurs="0" name="SubCode" type="xsd:string"/>
<element name="Text" type="sml:Text"/>
</sequence>
</complexType>
<complexType name="Text">
<simpleContent>
<extension base="xsd:string">
<attribute form="qualified" name="lang" type="xsd:string"/>
</extension>
</simpleContent>
</complexType>
<complexType name="To">
<sequence>
<element minOccurs="0" name="PartyId" type="sml:PartyId"/>
<element name="Location" type="xsd:string"/>
</sequence>
</complexType>
<complexType name="TraceHeader">
<sequence>
<element name="Sender" type="sml:From"/>
<element minOccurs="0" name="Receiver" type="sml:To"/>
<element name="Service" type="sml:Service"/>
<element name="MessageData" type="sml:MessageData"/>
</sequence>
</complexType>
<complexType name="TraceHeaderList">
<sequence>
<element maxOccurs="unbounded" name="TraceHeader" type="sml:TraceHeader"/>
</sequence>
</complexType>
<complexType name="Transaction">
<sequence>
<element name="Interaction" type="xsd:string"/>
<element name="TransactionId" type="xsd:string"/>
<element name="SystemId" type="xsd:string"/>
<element name="MessageId" type="xsd:string"/>
<element name="Timestamp" type="xsd:dateTime"/>
</sequence>
</complexType>
<complexType name="TransactionList">
<sequence>
<element maxOccurs="unbounded" name="Transaction" type="sml:Transaction"/>
</sequence>
</complexType>
<element name="ErrorList" type="sml:ErrorList"/>
<element name="MessageHeader" type="sml:MessageHeader"/>
<element name="TraceHeaderList" type="sml:TraceHeaderList"/>
<element name="TransactionList" type="sml:TransactionList"/>
</schema>
<schema xmlns="http://www.w3.org/2001/XMLSchema" xmlns:ns="http://xmlns.kpn.com/mobile/m2c/cdm/pushintroamingtarifflist.1response.xsd" xmlns:sml="http://xmlns.kpn.com/mobile/m2c/cdm/sml/envelope.1" xmlns:xsd="http://www.w3.org/2001/XMLSchema" attributeFormDefault="qualified" elementFormDefault="qualified" targetNamespace="http://xmlns.kpn.com/mobile/m2c/cdm/pushintroamingtarifflist.1response.xsd">
<import namespace="http://xmlns.kpn.com/mobile/m2c/cdm/sml/envelope.1"/>
<element name="PushIntRoamingTariffListResponse">
<complexType>
<sequence>
<element name="Header">
<complexType>
<complexContent>
<extension base="sml:Header"/>
</complexContent>
</complexType>
</element>
<element minOccurs="0" name="Body">
<complexType>
<complexContent>
<extension base="sml:Body">
<sequence>
<element minOccurs="0" ref="ns:Response"/>
<element minOccurs="0" ref="ns:Result"/>
</sequence>
</extension>
</complexContent>
</complexType>
</element>
</sequence>
</complexType>
</element>
<element name="Response" type="xsd:anyType"/>
<element name="Result" type="sml:Result"/>
</schema>
</wsdl:types>
<wsdl:message name="pushintroamingtarifflist.1requestmessage">
<wsdl:part element="ns0:Request" name="Request"/>
</wsdl:message>
<wsdl:message name="pushintroamingtarifflist.1responsemessage">
<wsdl:part element="ns1:Response" name="Response"/>
<wsdl:part element="ns1:Result" name="Result"/>
</wsdl:message>
<wsdl:message name="HeaderMessage">
<wsdl:part element="ns2:MessageHeader" name="MessageHeader"/>
<wsdl:part element="ns2:TraceHeaderList" name="TraceHeaderList"/>
<wsdl:part element="ns2:ErrorList" name="ErrorList"/>
<wsdl:part element="ns2:TransactionList" name="TransactionList"/>
</wsdl:message>
<wsdl:portType name="PushIntRoamingTariffList.1PortType">
<wsdl:operation name="PushIntRoamingTariffList.1">
<wsdl:input message="tns:pushintroamingtarifflist.1requestmessage"/>
<wsdl:output message="tns:pushintroamingtarifflist.1responsemessage"/>
</wsdl:operation>
</wsdl:portType>
<wsdl:binding name="PushIntRoamingTariffList.1Binding" type="tns:PushIntRoamingTariffList.1PortType">
<soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
<wsdl:operation name="PushIntRoamingTariffList.1">
<wsdl:documentation>The operation has no documentation</wsdl:documentation>
<soap:operation soapAction="/PushIntRoamingTariffList.1" style="document"/>
<wsdl:input>
<soap:body parts="Request" use="literal"/>
<soap:header message="tns:HeaderMessage" part="MessageHeader" use="literal"/>
<soap:header message="tns:HeaderMessage" part="TraceHeaderList" use="literal"/>
<soap:header message="tns:HeaderMessage" part="ErrorList" use="literal"/>
<soap:header message="tns:HeaderMessage" part="TransactionList" use="literal"/>
</wsdl:input>
<wsdl:output>
<soap:body parts="Response Result" use="literal"/>
<soap:header message="tns:HeaderMessage" part="MessageHeader" use="literal"/>
<soap:header message="tns:HeaderMessage" part="TraceHeaderList" use="literal"/>
<soap:header message="tns:HeaderMessage" part="ErrorList" use="literal"/>
<soap:header message="tns:HeaderMessage" part="TransactionList" use="literal"/>
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
<wsdl:service name="PushIntRoamingTariffList.1">
<wsdl:port binding="tns:PushIntRoamingTariffList.1Binding" name="PushIntRoamingTariffList.1HttpPort">
<soap:address location="http://vm272:8181/Processes/WSDLTests/EURoamingPS/PushIntRoamingTariffList.1/PushIntRoamingTariffList.1"/>
</wsdl:port>
</wsdl:service>
</wsdl:definitions>