DOKUMENTACE PHP
RUZNÉ ZPUSOBY ZÁPISU VOLÁNÍ SOAP METOD
- Použití metody soapCall kdy se predává v argumentech metody název volané SOAP metody a její vstupní parametry v poli:
$input_params = array(
'filter' => array(
'city'=>'Praha',
),
'fulltext'=>NULL,
'number' => 123456789,
);
$soapClient->__soapCall('getCustomerList', $input_params); - Zjednodušené volání SOAP metody, kde se pak vstupní parametry predávají jako bežné metode a v poradí ve kterém je ocekává:
$soapClient->getCustomerList(array('city'=>'Praha'), NULL, 123456789);
DODRŽENÍ SPRÁVNÉHO PORADÍ VSTUPNÍCH PARAMETRU
- Poradí vstupních parametru na nejvyšší úrovni musí být stejné jako je ve WSDL.
- Napr. pri použití metody getCustomerList nelze prohodit pozici filter a number.
Pokud chcete filtrovat podle císla a mesta, nelze vynechat parametr fulltext a vstupní parametry se musí nastavit takto:
$input_params = array(
'filter' => array(
'city'=>'Praha',
),
'fulltext'=>NULL,
'number' => 123456789,
);
STRUKTURA VRÁCENÝCH DAT
- Jestli že je v odpovedi serveru ocekáváno v nekterém parametru pole, tak v prípade že je v poli pouze jeden prvek, SoapClient prevede tento prvek na objekt. Toto chování klienta lze upravit nastavením SOAP_SINGLE_ELEMENT_ARRAYS.
$soapClient = new SoapClient($wsdl, array('features' =>
SOAP_SINGLE_ELEMENT_ARRAYS));
HLEDANÍ CHYB
- Prí ladení klienta v php je velice užitecné použít metody getLastRequest a getLastResponse. Tyto metody vám umožní zobrazit XML žádost nebo XML odpoved, kterou posíláte nebo prijímáte od serveru a následne ji porovnat se vzorem uvedeným v dokumentaci u jednotlivých metod.
PROBLÉM S KOMUNIKACÍ PRES HTTPS
Je nutné aby na klientovy byla nainstalována verze OpenSSL >= 1.0.0