Гость
Map
Форумы / XML, XSL, XPath, XQuery [игнор отключен] [закрыт для гостей] / Доработать WSDL / 3 сообщений из 3, страница 1 из 1
25.09.2019, 13:15
    #39866842
chuwees
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Доработать WSDL
Добрый день!
В WSDL отсутствует схема ответа сервиса. Как доработать на основе полученного ответа?

Это элемент types из WSDL
Код: xml
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
<?xml version="1.0" encoding="utf-8"?>
<wsdl:definitions xmlns:tm="http://microsoft.com/wsdl/mime/textMatching/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:tns="http://web.cbr.ru/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:s="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/" xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" targetNamespace="http://web.cbr.ru/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
  <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">Веб сервис для получения ежедневных данных ver 20.03.2018</wsdl:documentation>
  <wsdl:types>
    <s:schema elementFormDefault="qualified" targetNamespace="http://web.cbr.ru/">
     <s:element name="GetCursOnDateXML">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="1" maxOccurs="1" name="On_date" type="s:dateTime" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="GetCursOnDateXMLResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="GetCursOnDateXMLResult">
              <s:complexType mixed="true">
                <s:sequence>
                  <s:any />
                </s:sequence>
              </s:complexType>
            </s:element>
          </s:sequence>
        </s:complexType>
      </s:element>

    </s:schema>
  </wsdl:types>



это фрагмент ответа
Код: xml
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
   <soap:Body>
      <GetCursOnDateXMLResponse xmlns="http://web.cbr.ru/">
         <GetCursOnDateXMLResult>
            <ValuteData OnDate="20190925" xmlns="">
               <ValuteCursOnDate>
                  <Vname>Австралийский доллар</Vname>
                  <Vnom>1</Vnom>
                  <Vcurs>43.1927</Vcurs>
                  <Vcode>36</Vcode>
                  <VchCode>AUD</VchCode>
               </ValuteCursOnDate>



у меня получилось так
Код: xml
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
<?xml version="1.0" encoding="utf-8"?>
<wsdl:definitions xmlns:tm="http://microsoft.com/wsdl/mime/textMatching/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:tns="http://web.cbr.ru/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:s="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/" xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" targetNamespace="http://web.cbr.ru/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
  <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">Веб сервис для получения ежедневных данных ver 20.03.2018</wsdl:documentation>
  <wsdl:types>
    <s:schema elementFormDefault="qualified" targetNamespace="http://web.cbr.ru/">
     <s:element name="GetCursOnDateXML">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="1" maxOccurs="1" name="On_date" type="s:dateTime" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="GetCursOnDateXMLResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="1" maxOccurs="1" name="GetCursOnDateXMLResult">
              <s:complexType>
                <s:sequence>
                  <s:element minOccurs="1" maxOccurs="1" name="ValuteData">
                    <s:complexType>
                      <s:sequence>
                        <s:element minOccurs="1" maxOccurs="1" name="ValuteCursOnDate">
                          <s:complexType>
                            <s:sequence>
                              <s:element minOccurs="1" maxOccurs="1" name="Vname" type="s:string" />
                              <s:element minOccurs="1" maxOccurs="1" name="Vnom" type="s:string" />
                              <s:element minOccurs="1" maxOccurs="1" name="Vcurs" type="s:string" />
                              <s:element minOccurs="1" maxOccurs="1" name="Vcode" type="s:string" />
                              <s:element minOccurs="1" maxOccurs="1" name="VchCode" type="s:string" />
                            </s:sequence>
                          </s:complexType>
                        </s:element>
                      </s:sequence>  
                    </s:complexType>
                  </s:element>  
                </s:sequence>
              </s:complexType>
            </s:element>
          </s:sequence>
        </s:complexType>
      </s:element>

    </s:schema>
  </wsdl:types>



Подскажите, все ли правильно или где-то накосячил? Не судите строго, это моя первая задача по интеграции и сегодня первый раз вижу WSDL и с XML знаком поверхностно :)
...
Рейтинг: 0 / 0
25.09.2019, 14:34
    #39866898
_Vasilisk_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Доработать WSDL
chuweesмоя первая задача по интеграции и сегодня первый раз вижу WSDL и с XML знаком поверхностно :)Обычно WSDL генерируется самой IDE на основании написанных классов
...
Рейтинг: 0 / 0
25.09.2019, 14:41
    #39866904
chuwees
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Доработать WSDL
_Vasilisk_Обычно WSDL генерируется самой IDE на основании написанных классов

ну тут задача с подвохом в целях обучения. надо либо доработать WSDL либо вручную интеграционный объект сделать на основе ответа.
...
Рейтинг: 0 / 0
Форумы / XML, XSL, XPath, XQuery [игнор отключен] [закрыт для гостей] / Доработать WSDL / 3 сообщений из 3, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]