[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: soap wsdl сервис
tretstoun70
Здравствуйте,


я создаю soap wsdl сервис и столкнулся с такой задачей -


не могу отправить повторяющиеся значения на сторону клиента (да и в любую сторону).


В файле wsdl есть такое описание:

<xs:complexType name="pupilsList">
<xs:annotation>
<xs:documentation>Список учащихся</xs:documentation>
</xs:annotation>

<xs:sequence>

<xs:element minOccurs="1" maxOccurs="unbounded" name="pupil" type="tns:pupil"/>

</xs:sequence>

</xs:complexType>



Тоесть внутри мне нужно передать множество подобных элементов - pupil. Но как это сделать?

Я передаю данные ассоциативным массивом, а в нём не записать одинаковых ключей.

Вот пример данных, которые я отправляю - array ("pupilsList" =>

array ("pupil"=>
array ("regid"=>$school,"suid"=>55578,"surname"=>"ERcxcxc","name"=>"xfdfdf","patronymic"=>"sdfs","class"=>"10 A","dob"=>"207-01-01","cardDataList"=>
array("cardInfo"=>
array ("cardData"=>"777777","cardRFID"=>"67777777","cardType"=>"1","cardTypeOper"=>"4567","benefit"=>
array ("code"=>1,"adate"=>"2018-12-12","bdate"=> "2018-12-12")))), "pupil_2" => array ("regid"=>$school,"suid"=>55575,"surname"=>"ERcxcxc","name"=>"xfdfdf","patronymic"=>"sdfs","class"=>"10 A","dob"=>"207-01-01","cardDataList"=>
array("cardInfo"=>
array ("cardData"=>"777777","cardRFID"=>"67777777","cardType"=>"1","cardTypeOper"=>"4567","benefit"=>
array ("code"=>1,"adate"=>"2018-12-12","bdate"=>"2018-12-12")))), "pupil_500" => array ("regid"=>$school,"suid"=>55575,"surname"=>"ERcxcxc","name"=>"xfdfdf","patronymic"=>"sdfs","class"=>"10 A","dob"=>"207-01-01","cardDataList"=>
array("cardInfo"=>
array ("cardData"=>"777777","cardRFID"=>"67777777","cardType"=>"1","cardTypeOper"=>"4567","benefit"=>
array ("code"=>1,"adate"=>"2018-12-12","bdate"=>"2018-12-12")))) ),"datetime"=>"2018-12-12");



Вот описание одного элемента pupil:

<xs:complexType name="pupil">
<xs:sequence>
<xs:element maxOccurs="1" minOccurs="1" name="regid" type="xs:string"/>
<xs:element maxOccurs="1" minOccurs="1" name="suid" type="xs:string"/>
<xs:element maxOccurs="1" minOccurs="1" name="surname" type="xs:string"/>
<xs:element maxOccurs="1" minOccurs="1" name="name" type="xs:string"/>
<xs:element name="patronymic" type="xs:string"/>
<xs:element maxOccurs="1" minOccurs="1" name="klass" type="xs:string"/>
<xs:element name="dob" type="xs:date"/>
<xs:element name="cardDataList" type="tns:cardDataList"/>

</xs:sequence>
</xs:complexType>




Пробовал под ключом pupil передавать массив данных, но появляется ошибка. Не соответствие wsdl-схеме. Внутри нет соответствующих свойств.

Кто-нибудь может подсказать - что в этом случае может сработать?


Если непонятно задание - то пишите, я напишу подробнее или как-то его переформулирую.
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.