Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/matlab/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Web services 在MatlabSOAP请求中创建子标记_Web Services_Matlab_Soap - Fatal编程技术网

Web services 在MatlabSOAP请求中创建子标记

Web services 在MatlabSOAP请求中创建子标记,web-services,matlab,soap,Web Services,Matlab,Soap,我正在Matlab中为Web服务开发一个SOAP客户端。我正在做的是以下脚本: createClassFromWsdl('http://192.168.107.239/WSDL/v4.0/iLON100.wsdl') obj = iLON100 methods(obj) 下一个结果是: Methods for class iLON100: Clear Get List Set display Delete InvokeCmd

我正在Matlab中为Web服务开发一个SOAP客户端。我正在做的是以下脚本:

createClassFromWsdl('http://192.168.107.239/WSDL/v4.0/iLON100.wsdl')
obj = iLON100
methods(obj)
下一个结果是:

Methods for class iLON100:

Clear      Get        List       Set        display    
Delete     InvokeCmd  Read       Write      iLON100 
然后,我正在编辑方法列表,以请求服务的项目列表。dot m文件是:

% Build up the argument lists.
values = { '','//Item[@xsi:type="Dp_Cfg"]'};
names = { 'iLonItem','xSelect'};
types = {};

% Create the message, make the call, and convert the response into a variable.
soapMessage = createSoapMessage('http://wsdl.echelon.com/web_services_ns/ilon100/v4.0/message/', 
'List', values, names, types, 'document');
我还有一个来自设备供应商的SOAP测试仪。然后,如果我比较两个XML请求,它们会有所不同,正如您在下一个示例中所看到的,首先是原始请求,其次是Matlab请求:

<SOAP-ENV:Body>
<List xmlns="http://wsdl.echelon.com/web_services_ns/ilon100/v4.0/message/">
   <iLonItem>
      <xSelect>
         //Item[@xsi:type="Dp_Cfg"]
      </xSelect>
   </iLonItem>
</List>
</SOAP-ENV:Body>



<soap:Body soap:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
   <List xmlns="http://wsdl.echelon.com/web_services_ns/ilon100/v4.0/message/">
     <iLonItem/>
     <xSelect>Item</xSelect>
   </List>
</soap:Body>
正如您所观察到的,这些标记不包括在子标记中。我想知道如何做到这一点,并生成与正确发送SOAP请求相同的XML结构


非常感谢,

最后,我通过创建一个如下结构解决了这个问题:

myStruct = struct('iLonItem',struct('xSelect','//Item[@xsi:type="Dp_Cfg"]'))
此结构将插入到值和方法名称iLONItem中