Topic: Whether someone faced tightly with WST (SOAP the client on the basis of WST)
Good afternoon! Whether who had experience with web service toolkit for Lazarus?
Problem in that at me it is impossible to adjust generation of body SOAP of request as it is necessary. Was specific
Existing SOAP the server answers
<? xml version = "1.0" encoding = "UTF-8"?> <S:Envelope xmlns:S = "http://schemas.xmlsoap.org/soap/envelope/"> <S:Body> <ns2:getAgentsResponse xmlns:ns2 = "http://ws.server.example.com/"> <return> <messages> <message> <message> There is an element ' context ' </message> <type> ERROR </type> </message> </messages> </return> </ns2:getAgentsResponse> </S:Body> </S:Envelope>
But in body SOAP of request this element precisely exists!
Body SOAP of request (generated in WST) more low:
<? xml version = "1.0" encoding = "utf-8"?> <SOAP-ENV:Envelope xmlns:xsd = "http://www.w3.org/2001/XMLSchema" xmlns:xsi = "http://www.w3.org/1999/XMLSchema-instance" xmlns:SOAP-ENC = "http://schemas.xmlsoap.org/soap/encoding/" xmlns:SOAP-ENV = "http://schemas.xmlsoap.org/soap/envelope/"> <SOAP-ENV:Body xmlns:ns1 = "http://ws.server.example.com/"> <ns1:getAgents> <ns1:context> <ns1:locale> ru </ns1:locale> <ns1:loginName> user </ns1:loginName> <ns1:password> pass </ns1:password> <ns1:salesPointCode>WEB_SITE</ns1:salesPointCode> </ns1:context> </ns1:getAgents> </SOAP-ENV:Body> </SOAP-ENV:Envelope>
I assume what correctly to interpret request hinders ns1: in an element context. As if to look at examples of requests in the documentation to this service SOAP to which I fulfill request difference which it at once is evident that the name space is registered only for a root element getAgents, for the enclosed normal elements without instructions specific Name Space are used.
Example SOAP of request from the documentation to demanded service:
<SOAP-ENV:Envelope xmlns:SOAP-ENV = "http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1 = "http://ws.server.example.com/"> <SOAP-ENV:Body> <ns1:getAgents> <context> <locale> ru </locale> <loginName> user </loginName> <password> pass </password> <salesPointCode>WEB_SITE</salesPointCode> </context> </ns1:getAgents> </SOAP-ENV:Body>
How it is possible SOAP requests in WST? Changes of type with document on RPC tried - not that, does not help. More granular control is probably necessary. Whether that is was specific interests it is possible to make so that nested specified nested elements XML were without name space instructions (Name space) exactly as in examples which I saw in the documentation?
Thanks for any and councils!