Error when importing wsdl: Unsupported operation xxxx: Expecting a single part in message xxxx_request when using the document SOAP binding style.

When importing a wsdl I get an error message which I don't understand fully. Unsupported operation 'xxxx': Expecting a single part in message 'xxxx_request' when using the 'document' SOAP binding style. The wsdl works in SOAPUI. I'd like to provide the developers with more information on why it fails. Any suggestion? Below xxxx and yyyy are of course replacements of original names. <wsdl:message name="xxxx_request"> <wsdl:part name="control_area" type="tns:control_area"/> <wsdl:part name="request" type="tns:request"/> </wsdl:message> <wsdl:message name="xxxx_answer"> <wsdl:part name="xxxx_answer" type="tns:product_answer"/> </wsdl:message> <wsdl:portType name="yyyyrequestsPortType"> <wsdl:operation name="xxxx"> <wsdl:documentation /> <wsdl:input message="tns:xxxx_request"/> <wsdl:output message="tns:xxxx_answer"/> </wsdl:operation> </wsdl:portType> <wsdl:binding name="yyyyrequestsBinding" type="tns:yyyyrequestsPortType"> <soap-env:binding xmlns="" style="document" transport=""/> <wsdl:operation name="xxxx"> <soap-env:operation xmlns="" soapAction=""/> <wsdl:input> <soap-env:body xmlns="" use="literal" encodingStyle=""/> </wsdl:input> <wsdl:output> <soap-env:body xmlns="" use="literal" encodingStyle=""/> </wsdl:output> </wsdl:operation> </wsdl:binding> <wsdl:service name="yyyyrequests"> <wsdl:port name="yyyyrequestsPort" binding="tns:yyyyrequestsBinding"> <soap-env:address location="" xmlns:soap=""/> </wsdl:port>
1 answers

Your definition of the xxxx_request message contains two parts (control_area and request), but in a document style web service you can only have one message part (see this article for the different types of web services).