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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 21.06.2011, 17:35   #1  
DonMiguel is offline
DonMiguel
Участник
 
7 / 10 (1) +
Регистрация: 21.06.2011
Angry Не могу разобраться с Web-сервисами :(
Господа, выручайте.

И CRM-ом и Web-сервисами занимаюсь ровно неделю

Надо разобраться как эти веб сервисы работают

При попытке использовать CrmService напрямую возвращает ошибку 401

Скармливаю post-ом вот такой XML

<?xml version="1.0" encoding="UTF-8"?>
<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:Header>
<CrmAuthenticationToken xmlns="http://schemas.microsoft.com/crm/2007/WebServices">
<AuthenticationType xmlns="http://schemas.microsoft.com/crm/2007/CoreTypes">
0
</AuthenticationType>
<OrganizationName xmlns="http://schemas.microsoft.com/crm/2007/CoreTypes">
AdventureWorksCycle
</OrganizationName>
<CallerId xmlns="http://schemas.microsoft.com/crm/2007/CoreTypes">
00000000-0000-0000-0000-000000000000
</CallerId>
</CrmAuthenticationToken>
</soap:Header>
<soap:Body>
<Create xmlns='http://schemas.microsoft.com/crm/2007/WebServices'>
<entity xsi:type='lead'>
<subject>Интерес с сайта: Тест сервиса</subject>
<companyname>Тестовая компания</companyname>
<lastname>Иванов</lastname>
<emailaddress1>test@mail.ru</emailaddress1>
<telephone1>6782637</telephone1>
<jobtitle>Директор</jobtitle>
<description>Интерес для тестовых целей, не обращать внимания</description>
</entity>
</Create>
</soap:Body>
</soap:Envelope>

создал его по документации ответ - 401 пускаю через curl с использованием NTLM аутентификации

пробовал разобраться через CrmDiscoveryService

Загнал ему такой XML

<?xml version="1.0" encoding="iso-8859-1"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<Execute xmlns="http://schemas.microsoft.com/crm/2007/CrmDiscoveryService">
<Request>
<RetrieveCrmTicketRequest />
</Request>
</Execute>
</soap:Body>
</soap:Envelope>

что находится в теге реквест без разницы на все ответ один

<?xml version="1.0" encoding="utf-8"?><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><soap:Fault><faultcode>soap:Client</faultcode><faultstring>Server was unable to process request.</faultstring><detail><error>
<code>0x80040216</code>
<description>An unexpected error occurred.</description>
<type>Platform</type>
</error></detail></soap:Fault></soap:Body></soap:Envelope>

попытался на сервере трейс включить как тут описано

http://support.microsoft.com/kb/907490/en

ноль реакции никаких файлов в директории не создается

в общем тыкаюсь как слепой котенок, направьте хоть куда копать?

в моей конкторе спецов по этому делу нет (я сам в веб технологиях только в теории что то где то а так по базам данных всю жизнь, а тут подписали меня с этим заниматься )
Старый 21.06.2011, 18:19   #2  
Гуревич Денис is offline
Гуревич Денис
Участник
Лучший по профессии 2009
 
228 / 67 (3) ++++
Регистрация: 04.08.2008
Адрес: Москва
А CRM-то какой? 4.0 или 2011?
__________________
Опыт позволяет ошибаться гораздо увереннее.
Старый 21.06.2011, 18:26   #3  
DonMiguel is offline
DonMiguel
Участник
 
7 / 10 (1) +
Регистрация: 21.06.2011
Цитата:
Сообщение от Гуревич Денис Посмотреть сообщение
А CRM-то какой? 4.0 или 2011?
4.0
Старый 21.06.2011, 22:16   #4  
Артем Enot Грунин is offline
Артем Enot Грунин
Moderator
Аватар для Артем Enot Грунин
MCBMSS
Злыдни
Most Valuable Professional
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,912 / 623 (28) +++++++
Регистрация: 16.08.2007
Адрес: Пермь!
Записей в блоге: 151
Приведите код, пожалуйста.
__________________
http://fixrm.wordpress.com, снятие/наведение порчи. Быстро, дорого, гарантия.

MS Certified Dirty Magic Professional
Старый 22.06.2011, 10:03   #5  
DonMiguel is offline
DonMiguel
Участник
 
7 / 10 (1) +
Регистрация: 21.06.2011
Цитата:
Сообщение от Артем Enot Грунин Посмотреть сообщение
Приведите код, пожалуйста.
Кода как такового нет
через curl скармливаю XML сервисе вот такой командой

c:\curl>curl --ntlm --user admin:123 --header "Content-Type: text/xml" --data-as
cii @passorg.xml -v http://192.168.0.2/MSCRMServices/200...scoveryService
.asmx --output test.txt

passorg.xml имеет следующее содержимое

<?xml version="1.0" encoding="iso-8859-1"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<Execute xmlns="http://schemas.microsoft.com/crm/2007/CrmDiscoveryService">
<Request>
<RetrieveCrmTicketRequest />
</Request>
</Execute>
</soap:Body>
</soap:Envelope>
Старый 22.06.2011, 11:10   #6  
Артем Enot Грунин is offline
Артем Enot Грунин
Moderator
Аватар для Артем Enot Грунин
MCBMSS
Злыдни
Most Valuable Professional
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,912 / 623 (28) +++++++
Регистрация: 16.08.2007
Адрес: Пермь!
Записей в блоге: 151
Затейливо! Какую задачу вам предстоит решать и какими средствами? Интересуют язык и платформа. Дело в том, что я бы рекомендовал вам тестировать код и использовать более высокоуровневые реализации работы с веб сервисами.
__________________
http://fixrm.wordpress.com, снятие/наведение порчи. Быстро, дорого, гарантия.

MS Certified Dirty Magic Professional
Старый 22.06.2011, 14:13   #7  
DonMiguel is offline
DonMiguel
Участник
 
7 / 10 (1) +
Регистрация: 21.06.2011
Цитата:
Сообщение от Артем Enot Грунин Посмотреть сообщение
Затейливо! Какую задачу вам предстоит решать и какими средствами? Интересуют язык и платформа. Дело в том, что я бы рекомендовал вам тестировать код и использовать более высокоуровневые реализации работы с веб сервисами.
задача простая

есть веб форма, с нее заполняются данные, на основании этих данных создается новый интерес

моя задача родить XML запрос, который это сделает, затем уже его передадут разработчикам, которые это все водрузят на сайт

я вообще не разработчик есичо (ну вообщето специализируюсь на БД и общей архитектуре, т.е. до сего момента знаний "веб сервисы кормятся XML-ями и работают в гетерогенных средах" мне было за глаза, а тут такая задача)

с наскоку скормить Create crmservice не получилось

я так понял для начала надо получить токен, который надо пихать в хидер

для получения этого токена надо вызвать <RetrieveCrmTicketRequest />

при попытке вызвать получаем вот такой результат
Старый 22.06.2011, 15:09   #8  
Артем Enot Грунин is offline
Артем Enot Грунин
Moderator
Аватар для Артем Enot Грунин
MCBMSS
Злыдни
Most Valuable Professional
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,912 / 623 (28) +++++++
Регистрация: 16.08.2007
Адрес: Пермь!
Записей в блоге: 151
Вообще этот токен нужен в основном для получение тикета при работе с IFD и Live внедрениями. В вашем случае - NTLM авторизация он не нужен. Попробуйте воспользоваться решением http://www.stunnware.com/crm2/topic....=jswebservice2. Для этого нужно знать C#. Суть решения в том, что вы строите нужные вам запросы при помощи объектной модели CRM, запускаете программу и она выдает как должен выглядеть SOAP запрос.
__________________
http://fixrm.wordpress.com, снятие/наведение порчи. Быстро, дорого, гарантия.

MS Certified Dirty Magic Professional
Старый 22.06.2011, 15:22   #9  
Артем Enot Грунин is offline
Артем Enot Грунин
Moderator
Аватар для Артем Enot Грунин
MCBMSS
Злыдни
Most Valuable Professional
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,912 / 623 (28) +++++++
Регистрация: 16.08.2007
Адрес: Пермь!
Записей в блоге: 151
И да, кстати, при определенных сетевых настройках 401 бывает если обращаться к сервису по IP или доменному имени. Не уверен, что curl использует какие-то API Windows, но чем черт не шутит - попробуйте по имени машины к сервису обратиться. Еще можно поиграть настройками прокси и интрасети в IE и добавить узел CRM в доверенные или зону интрасети.
__________________
http://fixrm.wordpress.com, снятие/наведение порчи. Быстро, дорого, гарантия.

MS Certified Dirty Magic Professional
Старый 22.06.2011, 15:46   #10  
DonMiguel is offline
DonMiguel
Участник
 
7 / 10 (1) +
Регистрация: 21.06.2011
Цитата:
Сообщение от Артем Enot Грунин Посмотреть сообщение
И да, кстати, при определенных сетевых настройках 401 бывает если обращаться к сервису по IP или доменному имени. Не уверен, что curl использует какие-то API Windows, но чем черт не шутит - попробуйте по имени машины к сервису обратиться. Еще можно поиграть настройками прокси и интрасети в IE и добавить узел CRM в доверенные или зону интрасети.
В данном случае без разницы, обращались и через IP и через имя (http://crm:5555/ и так далее) и из под винды и из под Linux - результат всегда один

с C# все очень и очень плохо - я его совсем не знаю
Старый 22.06.2011, 16:41   #11  
Артем Enot Грунин is offline
Артем Enot Грунин
Moderator
Аватар для Артем Enot Грунин
MCBMSS
Злыдни
Most Valuable Professional
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,912 / 623 (28) +++++++
Регистрация: 16.08.2007
Адрес: Пермь!
Записей в блоге: 151
Linux? Знаете, бы тогда попытался, для начала, убедиться удается ли авторизоваться в CRM с веб сайта, а уже потом запрос отлаживал.
Еще мысль: HTML при помощи curl удается прочитать? Или тоже 401?
__________________
http://fixrm.wordpress.com, снятие/наведение порчи. Быстро, дорого, гарантия.

MS Certified Dirty Magic Professional
Старый 22.06.2011, 18:15   #12  
DonMiguel is offline
DonMiguel
Участник
 
7 / 10 (1) +
Регистрация: 21.06.2011
Цитата:
Сообщение от Артем Enot Грунин Посмотреть сообщение
Linux? Знаете, бы тогда попытался, для начала, убедиться удается ли авторизоваться в CRM с веб сайта, а уже потом запрос отлаживал.
Еще мысль: HTML при помощи curl удается прочитать? Или тоже 401?
нет HTML -ки выплевывает нормально без 401 ошибки
Старый 22.06.2011, 22:58   #13  
Артем Enot Грунин is offline
Артем Enot Грунин
Moderator
Аватар для Артем Enot Грунин
MCBMSS
Злыдни
Most Valuable Professional
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,912 / 623 (28) +++++++
Регистрация: 16.08.2007
Адрес: Пермь!
Записей в блоге: 151
Вдвойне странно... Пока догадок больше нет. Стандартная установка? Тонкой настройкой не занимались? Пользователь под которым читаете данные есть в CRM?
__________________
http://fixrm.wordpress.com, снятие/наведение порчи. Быстро, дорого, гарантия.

MS Certified Dirty Magic Professional
Старый 23.06.2011, 09:47   #14  
DonMiguel is offline
DonMiguel
Участник
 
7 / 10 (1) +
Регистрация: 21.06.2011
Цитата:
Сообщение от Артем Enot Грунин Посмотреть сообщение
Вдвойне странно... Пока догадок больше нет. Стандартная установка? Тонкой настройкой не занимались? Пользователь под которым читаете данные есть в CRM?
установил по гайду на mmcrm.ru

никакой настройки нет ни тонкой никакой (я этот CRM первый раз в жизни месяц назад увидел)


пользователь есть естественно, если нет ругань идет на гораздо более раннем этапе (короче этот момент исключил сразу)

блин ниужели никто никогда такого не далал?

проблема явно какая то принципиальная, так как в наличии и на сервере установленном только что и на боевом точно такая же картина

пытался искать что то по настройке Web сервисов - тишина

все примеры исключительно на C# или VB или JScript изредка Java

но нигде нет никакого примера где можно тупо скормить XML и получить ответ, хоть блин хеллоу ворлд какой нить
Старый 23.06.2011, 10:30   #15  
Артем Enot Грунин is offline
Артем Enot Грунин
Moderator
Аватар для Артем Enot Грунин
MCBMSS
Злыдни
Most Valuable Professional
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,912 / 623 (28) +++++++
Регистрация: 16.08.2007
Адрес: Пермь!
Записей в блоге: 151
Ну, гайд у вас сомнительный! Тем не менее, мне кажется что установка у вас рабочая. Принципиальная проблема заключается в средствах которые вы используете. Нет ничего удивительного в том, что для Web системы разработки Microsoft все примеры делаются на технологиях Microsoft. Откуда взять XML - вообще не важно - хоть из сокета его читайте. Проблема в том КАК вы эти данные передаете.
Например, я не вижу в вашем "коде" хидеров запроса:
"SOAPAction" = "http://schemas.microsoft.com/crm/2007/WebServices/ имя вызываемого веб метода"
"Content-Type" = "text/xml; charset=utf-8"
"Content-Length" = длинна вашего XML
И нигде не вижу, чтобы запрос выполнялся по методу POST, хотя это, вероятно скрыто в какой-то из инструкции curl. Возможно есть еще какие-то моменты.
Мы все делали подобные вещи, но из JavaScript (на худой конец отлаживайтесь так!) или при помощи готовых библиотек MS.
__________________
http://fixrm.wordpress.com, снятие/наведение порчи. Быстро, дорого, гарантия.

MS Certified Dirty Magic Professional
Теги
web сервис, crm4

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
crminthefield: How to Create a Simple Webpage Leveraging The CRM 2011 IOrganizationService Web Service Blog bot Dynamics CRM: Blogs 0 19.05.2011 02:11
Microsoft Dynamics CRM Team Blog: CRM Online: ‘Contact Us’ Web Form Made Easy Blog bot Dynamics CRM: Blogs 0 20.05.2009 05:05
Microsoft Dynamics CRM Team Blog: List Web Part for Microsoft Dynamics CRM 4.0 Deployment Scenarios Blog bot Dynamics CRM: Blogs 0 30.01.2009 22:05
Microsoft Dynamics CRM Team Blog: List Web Part for Microsoft Dynamics CRM 4.0: Understanding Connections Blog bot Dynamics CRM: Blogs 0 20.01.2009 02:07
Microsoft Dynamics CRM Team Blog: Announcing List Web Part for Microsoft Dynamics CRM 4.0 Blog bot Dynamics CRM: Blogs 0 18.12.2008 06:06

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

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

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