Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > PHP: Общие вопросы > web-services


Автор: Ivan 18.12.2008, 13:29
Здравствуйте.
Есть файл wsdl с двумя сервисами: getDogId - получить ID Договора, getDogConnections - получить неудаленные подключения договора. При работе с сервисом getDogConnections возникают проблемы.

Код

$wsdl = "http://localhost/wsdl/DogInfo.wsdl";

$client = new SoapClient($wsdl, array('trace' => true, 'execptions' => true));

// функция funcGetDogId возвращает ID Договора, функция работает!
$ReqAnswer = funcGetDogId($client, 78030);  

$dog_id = $ReqAnswer -> dog_id;
                
$ReqData = new stdClass();
$ReqData -> dog_id  = $dog_id;
                
// На этой строке выбрасывается исключение
$reg = $client -> getDogConnections($ReqData);


SoapFault exception: [Client] looks like we got no XML document in Z:\home\localhost\www\html\Accounts\personaltariff.php:281 Stack trace: #0 [internal function]: SoapClient->__call('getDogConnectio...', Array) #1 Z:\home\localhost\www\html\Accounts\personaltariff.php(281): SoapClient->getDogConnections(Object(stdClass)) #2 {main}                

В чем может быть проблема, подскажите пожалуйста.

Частичное описание сервиса:
Код

<message name="getDogConnectionsRequest">
  <part name="request" element="ws:getDogConnectionsRequest" /> 
</message>
<message name="getDogConnectionsResponse">
  <part name="response" element="ws:getDogConnectionsResponse" /> 
</message>

<operation name="getDogConnections">
  <soap:operation soapAction="ws:getDogConnections" /> 
 <input>
  <soap:body use="literal" /> 
  </input>
 <output>
  <soap:body use="literal" /> 
  </output>
</operation> 

Автор: MoLeX 18.12.2008, 13:59

 ! 
MoLeX
Модератор: 

Ivan
1. в разделе Профи - профи не сидят, тут обсуждают сложные вопросы.

2. Используйте кнопку КОД для форматирование кода


Автор: Ivan 19.12.2008, 08:04
Забыл добавить:
В качестве параметра сервис getDogConnections принимает id договора.

Результат вызова функции $client->__getTypes() :
    struct getDogConnectionsRequest { int dog_id; }
Результат вызова функции $client->__getFunctions() :
    getDogConnectionsResponse getDogConnections(getDogConnectionsRequest $request)

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)