Hello,
On wM 7.1.2 we have following problem: We call a WebService and get a valid response, but we have in the response document a namespace that resides within the soap-env:Body (And it’s not defined in the soap-env:Envelope).
Now, this namespace is used for the root element in the Body and thus has a prefix. Now, this prefix can normally be chosen freely. (As long as the namespaces match). But, webMethods doesn’t parse the namespace. It just copies the field with whatever prefix is used in the response. As a result, we can’t map the document as we don’t know what prefix will be used. When checking with an external tool (SoapUI) it does validate correctly. So the WebService itself is allowed to define namespaces within the soap-env:Body I assume.
What would be the best approach for this issue?
As information the response document, the problematic prefix is in this case “sapgdt”:
<soap-env:Envelope xmlns:soap-env="[URL]http://schemas.xmlsoap.org/soap/envelope/[/URL]">
<soap-env:Header/>
<soap-env:Body>
<sapgdt:CancelPostingLockDocumentConfirmation_sync
xmlns:sapgdt="[URL]http://sap.com/xi/SAPGlobal/GDT[/URL]"
xmlns:prx="urn:sap.com:proxy:DB1:/1SAI/TXS53B8F5E9F837CD54A1A6:710:2008/06/25">
<MessageHeader>
<CreationDateTime>2009-07-14T21:45:43.12Z</CreationDateTime>
</MessageHeader>
<Log>
<Item>
<TypeID>BCA_DEH</TypeID>
<Note>PLM document 276 is currently locked by user C01215</Note>
</Item>
<Item>
<TypeID>BAPI</TypeID>
<Note>Instance 000000000276 of object type PostingLockItem could not be changed</Note>
</Item>
</Log>
</sapgdt:CancelPostingLockDocumentConfirmation_sync>
</soap-env:Body>
</soap-env:Envelope>