SAPфорум.RU https://sapboard.ru/forum/ |
|
Структуры с одинаковым именем в WSDL https://sapboard.ru/forum/viewtopic.php?f=13&t=99754 |
Страница 1 из 1 |
Автор: | Friday [ Вс, сен 12 2021, 18:40 ] |
Заголовок сообщения: | Структуры с одинаковым именем в WSDL |
Всем привет. Возникла странная ситуация. В SE80 создаю потребителя услуг на основе WSDL-файла. Метод QUERY_UPDATES с параметром Z_QUERY_UPDATES. Создаю еще один. Во втором WSDL тоже есть метод QUERY_UPDATES с параметром, который тоже называется. Они имеют разные поля, но SAP думает, что это одна и та же структура и в объявляет метод второго класса с параметром Z_QUERY_UPDATES. Оба WSDL имеют одинаковое значение targetNamespace. Пытался до сохранения нового потребителя услуг изменить её - не дает - строка серая. Если префикс другой ставлю - все равно привязывает к старой структуре. Как быть? |
Автор: | Удав [ Вт, сен 14 2021, 21:45 ] |
Заголовок сообщения: | Re: Структуры с одинаковым именем в WSDL |
До активации service-consumer можно поменять названия структур на вкладке "Objects", нажав кнопку "Load all" |
Автор: | Friday [ Ср, сен 15 2021, 05:24 ] |
Заголовок сообщения: | Re: Структуры с одинаковым именем в WSDL |
Удав написал(а): До активации service-consumer можно поменять названия структур на вкладке "Objects", нажав кнопку "Load all" Пробовал. Несколько объектов, в том числе эти две структуры, серые и их названия не меняются. Видимо SAP думает, что эта структура появилась при импорте первого WSDL файла и просто переписывает ее. |
Автор: | Удав [ Чт, сен 16 2021, 07:51 ] |
Заголовок сообщения: | Re: Структуры с одинаковым именем в WSDL |
Попробуйте удалить service-consumers полностью (т.е. все объекты, включая структуры и типы данных) и создать заново. |
Автор: | Friday [ Чт, сен 16 2021, 11:00 ] |
Заголовок сообщения: | Re: Структуры с одинаковым именем в WSDL |
Удав написал(а): Попробуйте удалить service-consumers полностью(т.е. все объекты, включая структуры и типы данных) и создать заново. Так и делаю. Потом создаю один - вижу, что структура соответствует структуре в WSDL. Потом создаю второй - вижу, что теперь структура соответствует последнему WSDL-файлу |
Автор: | Удав [ Чт, сен 16 2021, 14:22 ] |
Заголовок сообщения: | Re: Структуры с одинаковым именем в WSDL |
Как название структуры будет соответствовать WSDL, если вы вручную его меняете? |
Автор: | Friday [ Пт, сен 17 2021, 07:10 ] |
Заголовок сообщения: | Re: Структуры с одинаковым именем в WSDL |
Удав написал(а): Как название структуры будет соответствовать WSDL, если вы вручную его меняете? Нее. В 1 ом WSDL есть структура Code: <xs:element name="queryUpdatesRequest" .... type="tns:<структура 1>"/> .. <wsdl:message name="queryUpdates"> <wsdl:part element="tns:queryUpdatesRequest" name="queryUpdatesRequest"> </wsdl:part> Импортируем его. Получается следующее: Получается класс ZC1. Метод QUERY_UPDATES. У него параметр QUERY_UPDATES имеет тип Z_QUERY_UPDATES. У него поле QUERY_UPDATES_REQUEST, которое имеет тип структуры Z_A1_QUERY_UPDATES_REQ Во втором файлу Code: <xs:element name="queryUpdatesRequest" .... type="tns:<структура 2>"/> .. <wsdl:message name="queryUpdates"> <wsdl:part element="tns:queryUpdatesRequest" name="queryUpdatesRequest"> </wsdl:part> Создается класс ZC2. У него метод QUERY_UPDATES. У него параметр QUERY_UPDATES имеет тип Z_QUERY_UPDATES. У него поле QUERY_UPDATES_REQUEST, которое теперь имеет тип структуры Z_A2_QUERY_UPDATES_REQ. Получается, что теперь метод первого класса имеет тот же самый параметр, но он уже имеет тип другой структуры. Причем именно эти строки являются серыми и недоступны для редактирования на вкладе Objects до активации. В столце Info стоит статус, что уже используется. Я пробовал другой префикс - все равно. |
Автор: | Удав [ Вс, сен 19 2021, 22:40 ] |
Заголовок сообщения: | Re: Структуры с одинаковым именем в WSDL |
Можно wsdl выслать поиграться? У меня не было случая, чтобы название структуры нельзя было поменять... |
Автор: | Friday [ Вт, сен 21 2021, 11:05 ] |
Заголовок сообщения: | Re: Структуры с одинаковым именем в WSDL |
Удав написал(а): Можно wsdl выслать поиграться? У меня не было случая, чтобы название структуры нельзя было поменять... Без проблем https://test3.esf.kgd.gov.kz:8443/esf-w ... rvice?wsdl https://test3.esf.kgd.gov.kz:8443/esf-w ... rvice?wsdl |
Автор: | Удав [ Чт, сен 23 2021, 23:19 ] |
Заголовок сообщения: | Re: Структуры с одинаковым именем в WSDL |
WSDL по ссылкам не принимается парсером SAP. Ложное значение:Неизвестное имя запроса namespace.vstore:sessionClosedException |
Автор: | Friday [ Вс, сен 26 2021, 08:38 ] |
Заголовок сообщения: | Re: Структуры с одинаковым именем в WSDL |
Да, я обычно скачиваю файл и уже его скармливаю SAP |
Автор: | Crik [ Ср, мар 29 2023, 13:17 ] |
Заголовок сообщения: | Re: Структуры с одинаковым именем в WSDL |
У меня так же создался service consumer. Но я не использую метод queryUpdates для сервиса UFormWebService. Может поэтому и не заметил данную странность, хотя генерил пару лет назад. Вы ведете разработки по ВС и СНТ? |
Автор: | Friday [ Ср, май 10 2023, 11:48 ] |
Заголовок сообщения: | Re: Структуры с одинаковым именем в WSDL |
Crik написал(а): У меня так же создался service consumer. Но я не использую метод queryUpdates для сервиса UFormWebService. Может поэтому и не заметил данную странность, хотя генерил пару лет назад. Вы ведете разработки по ВС и СНТ? Добрый день. Да, занимался этим когда-то. |
Страница 1 из 1 | Часовой пояс: UTC + 3 часа |
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |