Consultor Eletrônico



Kbase P115510: The WSDL Analyzer ignores the "parts" attribute in the WSDL body definition
Autor   Progress Software Corporation - Progress
Acesso   Público
Publicação   8/3/2007
Status: Unverified

FACT(s) (Environment):

OpenEdge 10.0B
OpenEdge 10.1A
Web Services

SYMPTOM(s):

The WSDL Analyzer ignores the "parts" attribute in the WSDL body definition

The WSDL Analyzer ignores the "parts" attribute in the WSDL operation

The WSDL Analyzer outputs incorrect documentation for the WSDL document

The WSDL Analyzer defines an operation as containing multiple message parts

The WSDL Analyzer indicates that the SOAP Header needs to be included as part of the SOAP Body as well

CAUSE:

This is a known issue being investigated by Development

FIX:

As a workaround you need to create a separate WSDL message specific to the SOAP Body portion of the message. For example in the WSDL document:
<wsdl:message name="HelloWorldSoapIn">
<wsdl:part name="headers" element="ss:TxHeader" />
<wsdl:part name="parameters" element="prs:HelloWorld" />
</wsdl:message>
... should become ...
<wsdl:message name="HelloWorldSoapHeader">
<wsdl:part name="headers" element="ss:TxHeader" />
</wsdl:message>
<wsdl:message name="HelloWorldSoapIn">
<wsdl:part name="parameters" element="prs:HelloWorld" />
</wsdl:message>
... and then you can remove the "parts" attribute in the WSDL operation ...
<wsdl:input>
<soap:header use="literal" message="prs:HelloWorldSoapIn" part="headers" />
<soap:body use="literal" parts="parameters" />
</wsdl:input>
... to ...
<wsdl:input>
<soap:header use="literal" message="prs:HelloWorldSoapHeader" part="headers" />
<soap:body use="literal" />
</wsdl:input>