gifts2017

Тестирование Web–сервиса провайдера EDISoft для обмена электронными документами в формате EDI.

Опубликовал Вадим Шворобей (shvo65) в раздел Обмен - Интеграция с WEB

Как я тестировал Web–сервис провайдера EDISoft для обмена электронными документами в формате EDI и что из этого получилось...

Конторе пришло коммерческое предложение от партнеров обмениваться электронными документами в формате EDI. Вспомнив, что подобный опыт уже имеется, решил пойти по пути наименьшего сопротивления и использовать для обмена Web-сервисы. Партнеры предложили провайдера Эдисофт и мы согласились.

Техподдержка Эдисофта выслала все материалы для подключения, а также тестовый логин и пароль. Ну всё, дело пошло, подумал я и довольно ухмыльнулся. Оказалось, рано....

Первое, что пришло в голову – создать в 1С новую WS–ссылку. Однако при попытке создания ссылки неожиданно выскочила табличка «Неверный формат». Неужели что то забыл…. Начал лихорадочно проверять – так, сертификаты в Cacert.pem добавил, прокси–сервера у меня нет (интернет включен «напрямую»), так, вроде всё верно… Хотя все равно не работает.

Ладно, нужно хотя бы посмотреть внимательно на этот Web – сервис. Сразу бросается в глаза внешнее сходство с сервисом провайдера Корус, разве только слегка видоизменены названия функций и другое пространство имен «urn:wsedi» (называется, найди десять отличий). Но у Коруса Web – сервис работает, а этот нет. В чем же причина? Видимо, придется проверять валидность WSDL ссылки.

Вот что пишет онлайн валидатор WSDL ссылок http://www.validwsdl.com/ когда мы задаем ему проверить строку https://service.ediweb.eu/wsedi/services/EDIServiceSoap?WSDL

Error : The received HTTP response could not be parsed as a WSDL document : see below

(Ответ Web–сервиса не парсится как WSDL документ). Всё понятно, не смог разобрать ответ. А всё – таки, в чем причина?

Проверим теперь ответ Web–сервиса с помощью хорошо знакомой нам программы SOAP UI. Выберем самую простую функцию RelationShips, для тестирования зададим тестовый логин и пароль, полученный у Эдисофт. Нажимаем «Выполнить» (зеленую стрелочку в уголке) и, о чудо, получаем ответ. Но не всё гладко, как кажется. Встаем на поле ответа и правой кнопочкой «Validate» («Проверить»).

Ошибка в строке 4: Результат работы RelationShipResult принадлежит к другому пространству имен – на входе указано пространство «urn:wsedi», а результат возвращает «http://www.comarch.com/».

Вот и вся разгадка. Странно, как местные программисты ещё до этого не додумались…

На их месте, я бы сел быстро править текст своего сервиса, дабы не оконфузится в следующий раз. Не очень приятно, когда на подобные «косяки» указывает совершенно посторонний человек. Будьте повнимательней, когда сдираете у других, да ещё и криво.

Чего и вам желаю….

См. также

Подписаться Добавить вознаграждение

Комментарии

1. Edisoft Edisoft (edisoft) 01.11.13 16:44
Спасибо большое за указанную проблему, за то, что неравнодушны. Об этой проблеме мы знаем, это наследие тяжелого прошлого. Работаем над ней и ближайшее время исправим. Вы всегда можете связаться с нами, и мы расскажем как легко обойти эту проблему, а позже оповестим вас о ее решении.
2. Александр Беляев (~gekK@~) 06.11.13 14:20
3. Борис (soap) 07.11.13 15:51
Интересно проблемы EDI обменов встречаются достаточно часто
4. Пимшин 1 (Pim) 20.01.15 13:24
Здравствуйте.
А что такое Cacert.pem?
И как "туда" добавить сертификат?
5. Stepan Tyumentsev (st-ty@ngs.ru) 06.02.16 09:01
адрес ресурса https://service.ediweb.ru/wsedi/services/EDIServiceSoap?wsdl ,в примере опечатка, либо он уже изменился. Но это не главное, на запрос предоставить документацию на узел обмена, ответ от хелпдеска, что интеграция платная и коннекторы и т.п. выдаются после оплаты!!!
6. Алексей Л (alel77) 17.02.16 13:54
по опыту общения с эдисофотом в Питере - совершенно отвратильная техподдержка
Для написания сообщения необходимо авторизоваться
Прикрепить файл
Дополнительные параметры ответа