Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Прочее";
Текущий архив: 2015.10.18;
Скачать: [xml.tar.bz2];

Вниз

soap, как должен выглядеть "множественный нод"?   Найти похожие ветки 

 
ВладОшин ©   (2015-02-20 10:20) [0]

Есть присланный wsdl, где, в частности, написано

  <xs:complexType name="item">
   <xs:sequence>
    <xs:element name="id"
      type="xs:int"/>
......

и т.п., определялка item

и есть
  <xs:complexType name="order">
   <xs:sequence>
    <xs:element name="id"
      type="xs:int"/>
и т.п., определялка order
и последний элемент у него
    <xs:element name="items"
      type="tns:item"
      maxOccurs="unbounded"/>


запускаю мастера, получаю типы
 
item = class(TRemotable)
 private
   Fid: Integer;
и тп

 order = class(TRemotable)
 private
   Fid: Integer;
и тп
   Fitems: item;


соответственно, пишу

 
 order1 := order.Create;
 order1.id := 1;
...
 item1 := item.Create;
 item1.id := 11;
...
 order1.items := item1;
 AddOrder(order1)


и уходит, и принимается нормально xml вида
<order>
<id>1</id>
..
  <item>
    <id> 11</id>
Как сказано в определении - так и сгенерировано, так и работает. Правильно

но это не правильно.
потому что надо
<order>
<id>1</id>
..
<items>
  <item>
    <id> 11</id>  

вопрос: Что надо сделать и где - в WSDL, или мне генерацию поправить (переделать в  аля items[index:integer]: item с соотв. геттером


 
ВладОшин ©   (2015-02-20 10:39) [1]

уточню -
<xs:element name="items"
     type="tns:item"
     maxOccurs="unbounded"/>
смущает это.
т.е. вроде как допускается множественность?
Может тогда это мастер delphi неправильно сгенерировал?

С другой стороны - тестовый обмен состоялся, та сторона приняла и поняла отправленное.
Может все -таки ошибка в wsdl?
Потому что тз явно от нас предполагает обмен множественными нодами типа Item
Но как их впихнуть при этом - при таких типах - непонятно.


 
junglecat ©   (2015-02-20 11:35) [2]

ну, поскольку complexType name="item", то он тебе и сгенерил item
в мастере нету галки типа "pluralize ..."?


 
ухты ©   (2015-02-20 13:38) [3]

не видно указания массива


 
junglecat ©   (2015-02-20 15:29) [4]

как-то так?

<xs:complexType name="ItemArray">
<xs:sequence>
 <xs:element minOccurs="0" maxOccurs="unbounded" name="Item" nillable="true" type="tns:item"/>
</xs:sequence>
</xs:complexType>

<xs:element name="ItemArray" nillable="true" type="tns:ItemArray"/>


 
ВладОшин ©   (2015-02-20 17:42) [5]


> junglecat ©

да, спасибо!

  <xs:complexType name="Items">
   <xs:sequence>
    <xs:element name="Item"
      type="tns:item"
      maxOccurs="unbounded"/>
   </xs:sequence>
  </xs:complexType>

  <xs:complexType name="item">
   <xs:sequence>
    <xs:element name="id"
      type="xs:int"/>
........
   </xs:sequence>
  </xs:complexType>

  <xs:complexType name="order">
   <xs:sequence>
    <xs:element name="id"
      type="xs:int"/>
...............
    <xs:element name="items"
      type="tns:Items"/>
   </xs:sequence>
  </xs:complexType>

зы:
"что за собачий язык" (с)
меня так и подмывало взять инди_http1, и сказать ему .Put(s: string)
но надо же по-взрослому :)


 
virex(home) ©   (2015-02-24 19:03) [6]

>ВладОшин ©   (20.02.15 10:20) [0]

ничего не понял, но осуждаю


 
ВладОшин ©   (2015-03-03 13:44) [7]


> virex(home) ©   (24.02.15 19:03) [6]

ничего, такая же ерунда :)

ps
wsdl создан с помощью 1С v8.3
- чего там тыкать что бы создалось все правильно - нашлось методом тыка
(а обязательно надо там, потому что тогда оно понимает, ну ибо само и сделало. Что-то руками править - наверное можно, но надо знать чуть больше про 1С, что совсем не вариант, некогда)
В общем работает и хорошо



Страницы: 1 вся ветка

Форум: "Прочее";
Текущий архив: 2015.10.18;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.002 c
2-1400912873
nitrolon
2014-05-24 10:27
2015.10.18
Delphi TSocket, контроль переполнения


2-1400941622
Y
2014-05-24 18:27
2015.10.18
program can t start because rtl70.bpl is missing from your comput


15-1424416825
ВладОшин
2015-02-20 10:20
2015.10.18
soap, как должен выглядеть "множественный нод"?


11-1249495316
D[u]fa
2009-08-05 22:01
2015.10.18
SVN, BUGS and etc


15-1425659209
Jeer
2015-03-06 19:26
2015.10.18
Любимых и желанных женщин - с наступающим Праздником!





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский