2012-04-22 3 views
0

У меня есть веб-служба SOAP с полем arrayofstrings под названием newSettings, я пытаюсь отправить его как обычный массив строк, используя nusoap, но он не работает, никаких советов?отправить arryofstring с php + nusoap

Мой код:

$settings=array('password','composefontsize'); 
$param=array(
'EmailAddress'=> $userEmail, 
'newSettings' => $settings 
); 

$response=$this->client->call("GetRequestedUserSettings",$param); 

Мой запрос XML:

<?xml version="1.0" encoding="ISO-8859-1"?> 
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:ns6388="http://tempuri.org"> 
<SOAP-ENV:Body><GetRequestedUserSettings xmlns="http://tempuri.org/"> 
<AuthUserName>admin</AuthUserName> 
<AuthPassword>XXXX</AuthPassword> 
<EmailAddress>[email protected]</EmailAddress> 
<requestedSettings></requestedSettings> 
</GetRequestedUserSettings> 
</SOAP-ENV:Body> 
</SOAP-ENV:Envelope>" 

Update: Я установил его с $settings = array('string' => $value1,...);

+0

Решение должно идти как ответ, чтобы вы могли его принять. :) – Alfabravo

ответ

0

Вы можете обернуть мыло звонки в:

try { 
    // ... 
} catch (SoapFault $e) { 
    echo $e->faultcode; 
} 

Таким образом, если вы либо не соответствуют спецификации WSDL или времена сервера, что Вы будете в курсе проблемы. Я считаю, что это необходимо при использовании SOAP.

+0

webservice принимает запрос, но тэг newSettings пуст, поэтому мой массив не распознается. – nathanr

+0

я вижу, что вы его исправили, поздравляю тогда – ther

Смежные вопросы