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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 09.11.2016, 05:35   #1  
Pandasama is offline
Pandasama
Участник
 
457 / 137 (5) +++++
Регистрация: 11.08.2014
Адрес: Барнаул
Ax2012 веб-сервисы и умеют ли они SOAP?
Товарищи, начал недавно погружаться в пучину веб-сервисов.
Передо мной стоит следующая задача:
мне надо реализовать на базе Ax2012R3 веб-сервис аналогичный существующему (сейчас реализованному в NAV) по существующей спецификации, с учетом того что менять на стороне, потребляющей веб-сервис ничего нельзя

Простейшие веб-сервисы делать я, положим, умею, и вызывать их из той же Аксапты или какой-нибудь .NET приложения, но тут столкнулся со следующим:
сейчас на стороне потребления с веб-сервисом общение идет полностью через SOAP - то есть там руками создается SOAP-пакет с header, body и т.д.

Вопрос мой в следующем (прежде чем начать разрабатывать сервис, хотелось бы это понять): могу ли я в Ax2012 сделать сервис и выставить его во внешний мир так, чтобы он понимал SOAP ? будет ли это происходить автоматически (когда я по умолчанию выставляю сервис как NetTcp адаптер) или мне надо использовать другой адаптер, или какие-то настройки и т.д.?

Если я смотрю WDSL текущего запроса, то я вижу там описания подобного вида:
Код:
<operation name="Operation">
<input name="Operation" message="tns:Operation"/>
<output name="Operation_Result" message="tns:Operation_Result"/>
</operation>

<message name="Operation">
<part name="parameters" element="tns:Operation"/>
</message>

<message name="Operation_Result">
<part name="parameters" element="tns:Operation_Result"/>
</message>

<element name="Operation">
<complexType>
<sequence>
<element name="input" type="string" maxOccurs="1" minOccurs="1"/>
</sequence>
</complexType>
</element>

<element name="Operation_Result">
<complexType>
<sequence/>
</complexType>
</element>
Если я смотрю WDSL своего простого запроса в Ax2012, то вижу совсем другую картину вроде такой:
Код:
<wsdl:operation name="getVendAccount">
<soap12:operation soapAction="http://tempuri.org/SimpleService/getVendAccount" style="document" /> 
<wsdl:input name="SimpleServiceGetVendAccountRequest">
<soap12:header message="i0:SimpleServiceGetVendAccountRequest_Headers" part="context" use="literal" /> 
<soap12:body use="literal" /> 
</wsdl:input>
<wsdl:output name="SimpleServiceGetVendAccountResponse">
<soap12:body use="literal" /> 
</wsdl:output>
<wsdl:fault name="AifFaultFault">
<soap12:fault name="AifFaultFault" use="literal" /> 
</wsdl:fault>
</wsdl:operation>
Старый 09.11.2016, 10:00   #2  
Omeo is offline
Omeo
Участник
 
129 / 50 (2) ++++
Регистрация: 18.03.2004
Адрес: Moscow
1) веб сервисы изначально "понимают" SOAP, просто AX2012 генерит кучу разных сообщений для обработки
2) то что вы хотите можно сделать реализовав методы и объекты вашего сервиса, например, с помощью CLR
реализовать объекты с помощью System.Runtime.Serialization
методы самого сервиса должны получать и возвращать объекты CLR

единственно, таким методом все равно не удасться управлять min/maxoccurs
Теги
ax2012, soap, wdsl, web-services

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Web services и SOAP dyal DAX: Администрирование 9 04.06.2020 22:51
dynamicsax-fico: Invoice search AX2012 vs. AX7 (Part 2) Blog bot DAX Blogs 0 01.04.2016 10:11
Ax3 - Модуль Учет затрат egorych DAX: Функционал 15 12.12.2013 17:58
AX2012: сервисы и чудеса системного метода DictMethod.parameterCnt() wojzeh DAX: Программирование 2 26.02.2013 14:58
emeadaxsupport: Inventory closing differences between AX4.0 and AX2012 using weighted average costing method Blog bot DAX Blogs 0 27.12.2012 19:11
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

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

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

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 05:30.