Mam jakiś serverek z webservices, plikiem wsdl i xsd
Znalazłem obsługę w php i po wpisaniu
$client = new SoapClient("http://IP/WSDL/v4.0/iL.wsdl");
echo "<pre>";
var_dump($client->__getFunctions());
var_dump($client->__getTypes());
echo "</pre>";
dostaję coś takiego
array(8) {
[0]=>
string(35) "ListResponse List(List $parameters)"
[1]=>
string(32) "GetResponse Get(Get $parameters)"
}
array(181) {
[0]=>
string(145) "struct Item {
E_Fault fault;
string UCPTname;
string UCPTannotation;
E_Flag UCPThidden;
string UCPTaliasName;
E_LonString UCPTitemStatus;
}"
[1]=>
string(87) "struct Item_Cfg {
dateTime UCPTlastUpdate;
string UCPTdescription;
string UCPTuri;
}"
...
[25]=>
string(36) "struct List {
E_xSelect iLonItem;
}"
zacząłem od tej 3ciej opcji, wiec napisałem zgodnie z jakims tutorialem
$a= new stdclass;
$a->iLonItem=array();
$a->iLonItem[0]=new stdclass;
$a->iLonItem[0]->xSelect='LON_Device_Cfg';
$b='LON_Device_Cfg';
$client ->__call('List',array($a));
ale wyskakuje mi błąd 'Uncaught SoapFault exception'
w dokumentacji mam taki przykład
Request (return all data points on the internal Server automated systems device [i.LON
App])
<List xmlns="http://IP/web_services_ns/il0/v4.0/message/">
<iLonItem>
<xSelect>//Item[@xsi:type="Dp_Cfg"]
[starts-with(UCPTname,"Net/LON/iLON App")]
</xSelect>
</iLonItem>
</List>
ale nie bardzo wiem jak go użyć