on 12-03-2007 7:39 PM
Hello,
I try to generate an abap client proxy, but I always receive the message SPRX 046 saying 'message must have only one part'.
I 've read somewhere in this forum that this message is supposed to be issued for RPC style Wsdl, but mine is document literal.
Has anyone got an idea?
Thanks for helping.
hi,
is it document/literal or is it only declared to be document/literal(style, use attributes) but does have more than 1 parts in the messages?
maybe you supply the WSDL(URL) if thats possible.
anton
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
If this can help a diagnosis, here is the wsdl I try to use
Thanks a lot for helping.
<?xml version="1.0" encoding="UTF-8" ?>
- <wsdl:definitions targetNamespace="http://10.1.70.16:8080/coriolis/services/interface_metier" xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:apachesoap="http://xml.apache.org/xml-soap" xmlns:impl="http://10.1.70.16:8080/coriolis/services/interface_metier" xmlns:intf="http://10.1.70.16:8080/coriolis/services/interface_metier" xmlns:tns1="http://services.webcoriolis" xmlns:tns2="http://exception.services.webcoriolis" xmlns:tns3="http://exception.ecran.webcoriolisV2" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
- <!--
WSDL created by Apache Axis version: 1.4
Built on Apr 22, 2006 (06:55:48 PDT)
-->
- <wsdl:types>
- <schema elementFormDefault="qualified" targetNamespace="http://services.webcoriolis" xmlns="http://www.w3.org/2001/XMLSchema">
<import namespace="http://exception.ecran.webcoriolisV2" />
<import namespace="http://xml.apache.org/xml-soap" />
<import namespace="http://10.1.70.16:8080/coriolis/services/interface_metier" />
<import namespace="http://exception.services.webcoriolis" />
<element name="idSessionStr" type="xsd:string" />
<element name="trameEnvoyee" type="xsd:string" />
<element name="idSessionStr1" type="xsd:string" />
<element name="nomAPI" type="xsd:string" />
<element name="trameEnvoyee1" type="xsd:string" />
<element name="nomAPI1" type="xsd:string" />
<element name="idSessionStr2" type="xsd:string" />
<element name="nomAPI2" type="xsd:string" />
</schema>
- <schema elementFormDefault="qualified" targetNamespace="http://10.1.70.16:8080/coriolis/services/interface_metier" xmlns="http://www.w3.org/2001/XMLSchema">
<import namespace="http://exception.ecran.webcoriolisV2" />
<import namespace="http://xml.apache.org/xml-soap" />
<import namespace="http://exception.services.webcoriolis" />
<element name="lancerAPIReturn" type="xsd:string" />
<element name="fault" type="tns2:CoriolisServiceException" />
- <complexType name="ArrayOf_xsd_anyType">
- <sequence>
<element maxOccurs="unbounded" minOccurs="0" name="item" type="xsd:anyType" />
</sequence>
</complexType>
<element name="fault1" type="tns3:SessionUserInexistanteException" />
<element name="lancerAPIReturn1" type="xsd:string" />
<element name="trameAPIReturn" type="xsd:string" />
<element name="trameAPIReturn1" type="xsd:string" />
</schema>
- <schema elementFormDefault="qualified" targetNamespace="http://exception.services.webcoriolis" xmlns="http://www.w3.org/2001/XMLSchema">
<import namespace="http://exception.ecran.webcoriolisV2" />
<import namespace="http://xml.apache.org/xml-soap" />
<import namespace="http://10.1.70.16:8080/coriolis/services/interface_metier" />
- <complexType name="CoriolisServiceException">
- <sequence>
<element name="erreur" nillable="true" type="xsd:string" />
</sequence>
</complexType>
</schema>
- <schema elementFormDefault="qualified" targetNamespace="http://xml.apache.org/xml-soap" xmlns="http://www.w3.org/2001/XMLSchema">
<import namespace="http://exception.ecran.webcoriolisV2" />
<import namespace="http://10.1.70.16:8080/coriolis/services/interface_metier" />
<import namespace="http://exception.services.webcoriolis" />
- <complexType name="Vector">
- <sequence>
<element maxOccurs="unbounded" minOccurs="0" name="item" type="xsd:anyType" />
</sequence>
</complexType>
</schema>
- <schema elementFormDefault="qualified" targetNamespace="http://exception.ecran.webcoriolisV2" xmlns="http://www.w3.org/2001/XMLSchema">
<import namespace="http://xml.apache.org/xml-soap" />
<import namespace="http://10.1.70.16:8080/coriolis/services/interface_metier" />
<import namespace="http://exception.services.webcoriolis" />
- <complexType name="TraitementException">
- <sequence>
<element name="erreur" nillable="true" type="xsd:string" />
<element name="erreurBloquanteDansFeuille" type="xsd:boolean" />
<element name="listeErreurs" nillable="true" type="impl:ArrayOf_xsd_anyType" />
<element name="listeTramesErreurs" nillable="true" type="impl:ArrayOf_xsd_anyType" />
<element name="messageErreur" nillable="true" type="xsd:string" />
<element name="retourServeur" type="xsd:boolean" />
<element name="typeErreur" nillable="true" type="xsd:string" />
</sequence>
</complexType>
- <complexType name="SessionUserInexistanteException">
- <complexContent>
- <extension base="tns3:TraitementException">
<sequence />
</extension>
</complexContent>
</complexType>
</schema>
</wsdl:types>
- <wsdl:message name="lancerAPIResponse">
<wsdl:part element="impl:lancerAPIReturn" name="lancerAPIReturn" />
</wsdl:message>
- <wsdl:message name="lancerAPIRequest">
<wsdl:part element="tns1:idSessionStr" name="idSessionStr" />
<wsdl:part element="tns1:trameEnvoyee" name="trameEnvoyee" />
</wsdl:message>
- <wsdl:message name="trameAPIRequest">
<wsdl:part element="tns1:nomAPI1" name="nomAPI" />
</wsdl:message>
- <wsdl:message name="trameAPIResponse">
<wsdl:part element="impl:trameAPIReturn" name="trameAPIReturn" />
</wsdl:message>
- <wsdl:message name="lancerAPIRequest1">
<wsdl:part element="tns1:idSessionStr1" name="idSessionStr" />
<wsdl:part element="tns1:nomAPI" name="nomAPI" />
<wsdl:part element="tns1:trameEnvoyee1" name="trameEnvoyee" />
</wsdl:message>
- <wsdl:message name="trameAPIRequest1">
<wsdl:part element="tns1:idSessionStr2" name="idSessionStr" />
<wsdl:part element="tns1:nomAPI2" name="nomAPI" />
</wsdl:message>
- <wsdl:message name="SessionUserInexistanteException">
<wsdl:part element="impl:fault1" name="fault" />
</wsdl:message>
- <wsdl:message name="trameAPIResponse1">
<wsdl:part element="impl:trameAPIReturn1" name="trameAPIReturn" />
</wsdl:message>
- <wsdl:message name="lancerAPIResponse1">
<wsdl:part element="impl:lancerAPIReturn1" name="lancerAPIReturn" />
</wsdl:message>
- <wsdl:message name="CoriolisServiceException">
<wsdl:part element="impl:fault" name="fault" />
</wsdl:message>
- <wsdl:portType name="LanceurAPIFacade">
- <wsdl:operation name="lancerAPI" parameterOrder="idSessionStr trameEnvoyee">
<wsdl:input message="impl:lancerAPIRequest" name="lancerAPIRequest" />
<wsdl:output message="impl:lancerAPIResponse" name="lancerAPIResponse" />
<wsdl:fault message="impl:CoriolisServiceException" name="CoriolisServiceException" />
<wsdl:fault message="impl:SessionUserInexistanteException" name="SessionUserInexistanteException" />
</wsdl:operation>
- <wsdl:operation name="lancerAPI" parameterOrder="idSessionStr nomAPI trameEnvoyee">
<wsdl:input message="impl:lancerAPIRequest1" name="lancerAPIRequest1" />
<wsdl:output message="impl:lancerAPIResponse1" name="lancerAPIResponse1" />
<wsdl:fault message="impl:CoriolisServiceException" name="CoriolisServiceException" />
<wsdl:fault message="impl:SessionUserInexistanteException" name="SessionUserInexistanteException" />
</wsdl:operation>
- <wsdl:operation name="trameAPI" parameterOrder="nomAPI">
<wsdl:input message="impl:trameAPIRequest" name="trameAPIRequest" />
<wsdl:output message="impl:trameAPIResponse" name="trameAPIResponse" />
<wsdl:fault message="impl:CoriolisServiceException" name="CoriolisServiceException" />
</wsdl:operation>
- <wsdl:operation name="trameAPI" parameterOrder="idSessionStr nomAPI">
<wsdl:input message="impl:trameAPIRequest1" name="trameAPIRequest1" />
<wsdl:output message="impl:trameAPIResponse1" name="trameAPIResponse1" />
<wsdl:fault message="impl:CoriolisServiceException" name="CoriolisServiceException" />
<wsdl:fault message="impl:SessionUserInexistanteException" name="SessionUserInexistanteException" />
</wsdl:operation>
</wsdl:portType>
- <wsdl:binding name="interface_metierSoapBinding" type="impl:LanceurAPIFacade">
<wsdlsoap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http" />
- <wsdl:operation name="lancerAPI">
<wsdlsoap:operation soapAction="" />
- <wsdl:input name="lancerAPIRequest">
<wsdlsoap:body use="literal" />
</wsdl:input>
- <wsdl:output name="lancerAPIResponse">
<wsdlsoap:body use="literal" />
</wsdl:output>
- <wsdl:fault name="CoriolisServiceException">
<wsdlsoap:fault name="CoriolisServiceException" use="literal" />
</wsdl:fault>
- <wsdl:fault name="SessionUserInexistanteException">
<wsdlsoap:fault name="SessionUserInexistanteException" use="literal" />
</wsdl:fault>
</wsdl:operation>
- <wsdl:operation name="lancerAPI">
<wsdlsoap:operation soapAction="" />
- <wsdl:input name="lancerAPIRequest1">
<wsdlsoap:body use="literal" />
</wsdl:input>
- <wsdl:output name="lancerAPIResponse1">
<wsdlsoap:body use="literal" />
</wsdl:output>
- <wsdl:fault name="CoriolisServiceException">
<wsdlsoap:fault name="CoriolisServiceException" use="literal" />
</wsdl:fault>
- <wsdl:fault name="SessionUserInexistanteException">
<wsdlsoap:fault name="SessionUserInexistanteException" use="literal" />
</wsdl:fault>
</wsdl:operation>
- <wsdl:operation name="trameAPI">
<wsdlsoap:operation soapAction="" />
- <wsdl:input name="trameAPIRequest">
<wsdlsoap:body use="literal" />
</wsdl:input>
- <wsdl:output name="trameAPIResponse">
<wsdlsoap:body use="literal" />
</wsdl:output>
- <wsdl:fault name="CoriolisServiceException">
<wsdlsoap:fault name="CoriolisServiceException" use="literal" />
</wsdl:fault>
</wsdl:operation>
- <wsdl:operation name="trameAPI">
<wsdlsoap:operation soapAction="" />
- <wsdl:input name="trameAPIRequest1">
<wsdlsoap:body use="literal" />
</wsdl:input>
- <wsdl:output name="trameAPIResponse1">
<wsdlsoap:body use="literal" />
</wsdl:output>
- <wsdl:fault name="CoriolisServiceException">
<wsdlsoap:fault name="CoriolisServiceException" use="literal" />
</wsdl:fault>
- <wsdl:fault name="SessionUserInexistanteException">
<wsdlsoap:fault name="SessionUserInexistanteException" use="literal" />
</wsdl:fault>
</wsdl:operation>
</wsdl:binding>
- <wsdl:service name="LanceurAPIFacadeService">
- <wsdl:port binding="impl:interface_metierSoapBinding" name="interface_metier">
<wsdlsoap:address location="http://10.1.70.16:8080/coriolis/services/interface_metier" />
</wsdl:port>
</wsdl:service>
</wsdl:definitions>
Hello Anton,
Thank you for your information. I checked the file and there is a strange thing:
On one hand, in the 'binding' part of the file, the style and use are said to be document literal.
On the other hand, if I look at the messages, some of them do have several part elements.
This leads me to the following questions :
Do you know how I can make sure that the wsdl is correct?
Are there converters I could use to convert my wsdl file to the right style and use?
Thank you for helping
User | Count |
---|---|
87 | |
10 | |
10 | |
9 | |
7 | |
7 | |
6 | |
5 | |
4 | |
4 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.