parseSoapResponse

Convert response string from SOAP (Simple Object Access Protocol) server into MATLAB types

parseSoapResponse will be removed in a future release. Use matlab.wsdl.createWSDLClient instead.

Syntax

  • data = parseSoapResponse(response) example

Description

example

data = parseSoapResponse(response) extracts data from SOAP server response and converts to MATLAB® types.

Examples

expand all

Retrieve Book Information from Library Database

This example assumes the library is on a local intranet and does not use an actual endpoint; therefore, you cannot run it.

Retrieve the name of the author of a book titled "In the Fall." The relative path of the library service is urn:LibraryCatalog. To get the author's name, use the getAuthor function, which takes the book name as the input value. The getAuthor parameter is nameToLookUp. The XML data type for title is {http://www.w3.org/2001/XMLSchema}string. The SOAP message style is rpc by default.

Create the SOAP message.

message = createSoapMessage(...
  'urn:LibraryCatalog',...
  'getAuthor',...
  {'In the Fall'},...
  {'nameToLookUp'},...
  {'{http://www.w3.org/2001/XMLSchema}string'})
message =
 
[#document: null]

This response does not necessarily indicate that the message is valid, although certain input problems produce error messages.

Send the message to the server for processing, and get the author's name back. The server endpoint is http://test/soap/services/LibraryCatalog. The server method is urn:LibraryCatalog#getAuthor.

response = callSoapService(...
  'http://test/soap/services/LibraryCatalog',...
  'urn:LibraryCatalog#getAuthor',...
  message)
<?xml version="1.0" encoding="utf-8"?>
<soapenv:Envelope 
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" 
xmlns:xsd="http://www.w3.org/2001/XMLSchema" 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soapenv:Body>
<getAuthorResponse xmlns="urn:LibraryCatalog">
<ns1:getAuthorReturn xmlns:ns1="http://latestversion.soap.test">
Kate Alvin
</ns1:getAuthorReturn>
</getAuthorResponse>
</soapenv:Body>
</soapenv:Envelope>

MATLAB returns the message in a single line, displayed here on separate lines for legibility.

Extract the author's name.

author = parseSoapResponse(response)
author = Kate Alvin

MATLAB automatically converted the XML string data type to char.

Input Arguments

expand all

response — Data from SOAP serverstring

Data from SOAP server, specified as a string. response is the output from the callSoapService function.

Output Arguments

expand all

data — Output of SOAP service callcell array of any valid MATLAB type

Output of SOAP service call, returned as a cell array of any valid MATLAB type. For information about data, see the documentation for the SOAP service used in the callSoapService function.

Was this topic helpful?