Symptom
When invoking certain third party webservices through PowerBuilder, an additional "s:type" parameter is appended to returned XML elements.
Environment
PowerBuilder
Reproducing the Issue
1. Create a webservice proxy to a specific third party webservice (for example Systems Union)*
2. Call the webservice and the response will have s:type element attribute similar to below:
<ns1:Header s:type="ns1:typeImportHeader"> <ns1:Version s:type="y:string">1.0</m:Version> <ns1:SourceApplication s:type="y:string">XXXXX</m:SourceApplication> <ns1:Status s:type="y:string">TEST</m:Status> <ns1:ReturnCheckResults s:type="y:boolean">true</m:ReturnCheckResults> <ns1:LangID s:type="y:string"></m:LangID>
Solution
Both formats (with or without s:type) are correct and should be handled correctly by the SOAP engine.
For customers using easySOAP engine that want to remove the s:type attributes the following key/value pair can be added to your application's pb.ini file to change the format used:
[Web Service] OmitSoapParameterType=1
Please note this only applies to easySOAP proxy objects.