AXForum  
Вернуться   AXForum > Microsoft Dynamics AX > DAX: Программирование
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 04.04.2024, 15:10   #1  
Maximin is offline
Maximin
NavAx
NavAx Club
 
409 / 341 (12) ++++++
Регистрация: 09.10.2002
Адрес: Москва
AX2012 R3 CU8 Приключения с AIF и 1С
В общем, я устал биться в одиночку..

Проблема в следующем:
Есть стандартнейший сервис InventItemService. Развернут порт HTTP на IIS.

Но вот 1Ска не хочет воспринимать его WSDL, ругаясь на той, что в одном из XSD, на которые разбит этот WSDL, не указан атрибут targetNamespace. И он там, действительно, не указан. Это при попытке создать стандартное WSОпределение.
Понятно, что руками все это можно прочитать, но сроки разработки будут x10...

Выглядит это так:
В общем WSDL (во второй части wsdl=wsdl1б если нужны подробности):
X++:
  <?xml version="1.0" encoding="utf-8" ?> 
- <wsdl:definitions targetNamespace="http://schemas.microsoft.com/dynamics/2008/01/services" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:wsx="http://schemas.xmlsoap.org/ws/2004/09/mex" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" xmlns:wsa10="http://www.w3.org/2005/08/addressing" xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy" xmlns:wsap="http://schemas.xmlsoap.org/ws/2004/08/addressing/policy" xmlns:msc="http://schemas.microsoft.com/ws/2005/12/wsdl/contract" xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/" xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:wsam="http://www.w3.org/2007/05/addressing/metadata" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:tns="http://schemas.microsoft.com/dynamics/2008/01/services" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/">
- <wsdl:types>
- <xsd:schema targetNamespace="http://schemas.microsoft.com/dynamics/2008/01/services/Imports">
  <xsd:import schemaLocation="http://ru-dev-ax/MicrosoftDynamicsAXAif60/tmpService/xppservice.svc?xsd=xsd7" namespace="http://schemas.microsoft.com/dynamics/2008/01/services" /> 
  <xsd:import schemaLocation="http://ru-dev-ax/MicrosoftDynamicsAXAif60/tmpService/xppservice.svc?xsd=xsd8" namespace="http://schemas.microsoft.com/dynamics/2010/01/datacontracts" /> 
  <xsd:import schemaLocation="http://ru-dev-ax/MicrosoftDynamicsAXAif60/tmpService/xppservice.svc?xsd=xsd10" namespace="http://schemas.microsoft.com/dynamics/2008/01/documents/Fault" /> 
  <xsd:import schemaLocation="http://ru-dev-ax/MicrosoftDynamicsAXAif60/tmpService/xppservice.svc?xsd=xsd0" namespace="http://schemas.microsoft.com/2003/10/Serialization/" /> 
  <xsd:import schemaLocation="http://ru-dev-ax/MicrosoftDynamicsAXAif60/tmpService/xppservice.svc?xsd=xsd1" namespace="http://schemas.microsoft.com/dynamics/2006/02/documents/EntityKeyList" /> 
  <xsd:import schemaLocation="http://ru-dev-ax/MicrosoftDynamicsAXAif60/tmpService/xppservice.svc?xsd=xsd2" namespace="http://schemas.microsoft.com/dynamics/2006/02/documents/EntityKey" /> 
[B]  <xsd:import schemaLocation="http://ru-dev-ax/MicrosoftDynamicsAXAif60/tmpService/xppservice.svc?xsd=xsd3" /> [/B]
  <xsd:import schemaLocation="http://ru-dev-ax/MicrosoftDynamicsAXAif60/tmpService/xppservice.svc?xsd=xsd4" namespace="http://schemas.microsoft.com/dynamics/2006/02/documents/QueryCriteria" /> 
  <xsd:import schemaLocation="http://ru-dev-ax/MicrosoftDynamicsAXAif60/tmpService/xppservice.svc?xsd=xsd5" namespace="http://schemas.microsoft.com/dynamics/2008/01/documents/Item" /> 
  <xsd:import schemaLocation="http://ru-dev-ax/MicrosoftDynamicsAXAif60/tmpService/xppservice.svc?xsd=xsd6" namespace="http://schemas.microsoft.com/dynamics/2008/01/sharedtypes" /> 
  <xsd:import schemaLocation="http://ru-dev-ax/MicrosoftDynamicsAXAif60/tmpService/xppservice.svc?xsd=xsd9" namespace="http://schemas.microsoft.com/2003/10/Serialization/Arrays" /> 
  <xsd:import schemaLocation="http://ru-dev-ax/MicrosoftDynamicsAXAif60/tmpService/xppservice.svc?xsd=xsd11" namespace="http://schemas.datacontract.org/2004/07/Microsoft.Dynamics.AX.Framework.Services" /> 
  </xsd:schema>
  </wsdl:types>
Как можно видеть, и в самом "xsd3" не указано никакого namespace.
И внутри этого xsd3 имеем:
X++:
  <?xml version="1.0" encoding="utf-8" ?> 
- <xs:schema elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:import schemaLocation="http://ru-dev-ax/MicrosoftDynamicsAXAif60/tmpService/xppservice.svc?xsd=xsd1" namespace="http://schemas.microsoft.com/dynamics/2006/02/documents/EntityKeyList" /> 
  <xs:import schemaLocation="http://ru-dev-ax/MicrosoftDynamicsAXAif60/tmpService/xppservice.svc?xsd=xsd4" namespace="http://schemas.microsoft.com/dynamics/2006/02/documents/QueryCriteria" /> 
  <xs:import schemaLocation="http://ru-dev-ax/MicrosoftDynamicsAXAif60/tmpService/xppservice.svc?xsd=xsd5" namespace="http://schemas.microsoft.com/dynamics/2008/01/documents/Item" /> 
  <xs:element name="EntityKeyList" type="q1:EntityKeyList" xmlns:q1="http://schemas.microsoft.com/dynamics/2006/02/documents/EntityKeyList" /> 
  <xs:element name="QueryCriteria" type="q2:QueryCriteria" xmlns:q2="http://schemas.microsoft.com/dynamics/2006/02/documents/QueryCriteria" /> 
  <xs:element name="AxdItem" type="q3:AxdItem" xmlns:q3="http://schemas.microsoft.com/dynamics/2008/01/documents/Item" /> 
  </xs:schema>
В нормальном же XSD в заголовке имеем:

X++:
  <?xml version="1.0" encoding="utf-8" ?> 
- <xs:schema elementFormDefault="qualified" [B]targetNamespace[/B]="http://schemas.microsoft.com/dynamics/2006/02/documents/QueryCriteria" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:tns="http://schemas.microsoft.com/dynamics/2006/02/documents/QueryCriteria">
Причем всегда в этот кривой XSD попадает QueryCriteria, EntityKeyList и AxdItem.
Я уже думал, что в их XSD что-то не то с targetNamespace. Но нет - он там указан.
Привел к единообразию их - их атрибуты были описаны через схему xsd:, а не через xs:. Установил одинаковую кодировку этим стандартным типам - utf-16. Все схемы в AifSchemaStore теперь единообразны и в одной кодировке.
И ничего.
И все равно этот XSD генерируется без targetNamespace.
Почему?!!!
И кто его генерирует? WCF? Бинарники AX AIF?
И нафига сдался этой 1Ске этот targetNamespace... Ну, немного не валидный WSDL, но все его понимают нормально. По сравнению с WSDLями самой 1Ски так вообще эталон.
Был у кого-то опыт интеграции и использования AIF сервисов Аксапты со стороны 1С и WSОпределением?
__________________
Жизнь прекрасна! Если, конечно, правильно подобрать антидепрессанты...

Последний раз редактировалось Maximin; 04.04.2024 в 15:14.
Старый 04.04.2024, 16:43   #2  
Logger is offline
Logger
Участник
Лучший по профессии 2015
Лучший по профессии 2014
 
3,875 / 3123 (112) ++++++++++
Регистрация: 12.10.2004
Адрес: Москва
Записей в блоге: 2
Вряд ли подскажу.
Но может вот это наведет вас на полезные мысли
КриптоПро. Отправка данных в ГИИС ДМДК. Электронная подпись XML
Теги
, aif, ax2012, ax2012r3, iis, xml, интеграция с 1с

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
dynamicsaxse: November 2018 Release – Dynamics AX2012 R3 update Blog bot DAX Blogs 0 15.11.2018 09:11
axsa: Extensibility in Dynamics AX 2012 R3 CU8 (CRT, RetailServer, MPOS) Part 2 – New data entity Blog bot DAX Blogs 0 21.05.2015 01:19
axsa: Retail Extensibility in Dynamics AX 2012 R3 CU8 (CRT, RetailServer, MPOS) Part 1 Blog bot DAX Blogs 0 19.02.2015 06:14
Установка AX2012 R3 CU8 на Sql Server 2014 lvan DAX: Администрирование 3 09.12.2014 01:13
axsa: Microsoft Exchange Server Integration in AX2012 R3 CU8 Blog bot DAX Blogs 2 08.12.2014 15:48

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 20:43.
Powered by vBulletin® v3.8.5. Перевод: zCarot
Контактная информация, Реклама.