|   |   | 
| 
 | v7: Вызов веб сервиса из 7.7, msxml3.dll: Неопознанная ошибка | ☑ | ||
|---|---|---|---|---|
| 0
    
        Gobo 16.04.19✎ 12:10 | 
        Доброек время суток !
 Не нашел открытой темы где обсуждался данный вопрос, поэтому открыл. На клиенте установлен Windows 7 x64. Пробовал так обращаться: Процедура Выполнить() ПараметрыSoap="<soapenv:Envelope xmlns:soapenv=""http://schemas.xmlsoap.org/soap/envelope/"" xmlns:core=""http://core.webservice.config.core.auction.bas.com/""> |<soapenv:Header/> |<soapenv:Body> |<core:createEntities> | <auth_key>0c18fd768c0cdab0ee41d4c605314259dff9b8cf8c8e4c3a0cb1e24090482c963190d643fe58b75f1bcb45e05cd861c1</auth_key> |<secret_key>8724112f3bf585cbb872f77562d06920d9b613327267dbf4f9190e99f0e35a82</secret_key> |<data_content>![CDATA[{""Организации"": [{ |""Ref"": ""eaf3d8f2-5207-11e5-9b29-000c293829c4"", |""Код"": ""000000001"", |""Наименование"": ""ТОО Cloudmaker""}]} |]] |</data_content> |<!--Optional:--> |<batchId>201</batchId> |<!--Optional:--> |<data_type>json</data_type> |</core:createEntities> |</soapenv:Body> |</soapenv:Envelope>"; Сообщить("ПараметрыSoap="+ПараметрыSoap); об = СоздатьОбъект("MSXML2.XMLHTTP"); об.open("POST", "https://presale.tophr.kz/corews?wsdl"); об.setRequestHeader("Content-Type", "text/xml; charset=utf-8"); об.setRequestHeader("SOAPAction", "http://core.webservice.config.core.auction.bas.com/#CoreWebServiceImplService:CoreWebServiceImplPort"); об.send(ПараметрыSoap); Если об.Status=200 Тогда ТекстОтвета = об.responseXml; КонецЕсли; КонецПроцедуры Получаю ошибку: Если об.Status=200 Тогда {F:\SOAPSENDER.ERT(45)}: msxml3.dll: Неопознанная ошибка Отладчик показывает что объект "об" пустой. | |||
| 1
    
        NikVars 16.04.19✎ 12:21 | 
        Обновления все установлены? Не просит обновиться или перезагрузиться после установки обновлений?     | |||
| 2
    
        Gobo 16.04.19✎ 12:27 | 
        Если вопрос на счет обновления ОС, они отключены.     | |||
| 3
    
        MadDAD 16.04.19✎ 14:29 | 
        (0) попробовать перерегистрировать "msxml3.dll" ?     | |||
| 4
    
        serpentt 16.04.19✎ 15:01 | 
        у меня по httpS не получилось послать.     | |||
| 5
    
        craxx 16.04.19✎ 15:04 | 
        (0) ощущение что XML невалидный     | |||
| 6
    
        trad 16.04.19✎ 15:47 | 
        (5) +1
 1. не хватает <?xml version="1.0" encoding="windows-1251"?> Без этого заголовка, xml по умолчанию считается в кодировке utf8 А строка с кириллицей собранная в 77 имеет кодировку ANSI. 2. <soapenv:Envelope xmlns:soapenv=""http://schemas.xmlsoap.org/soap/envelope/""; xmlns:core=""http://core.webservice.config.core.auction.bas.com/"">; тут - никаких точек_с_запятой Но у автора проблема, пока, не в этом | |||
| 7
    
        trad 16.04.19✎ 15:50 | 
        об.open("POST", "https://presale.tophr.kz/corews?wsdl";); 
 тут какой-то странный код и если делаем вызов метода soap, то причем тут wsdl | |||
| 8
    
        trad 16.04.19✎ 15:51 | 
        дурацкий форум - мудит с ;     | |||
| 9
    
        trad 16.04.19✎ 15:53 | ||||
| 10
    
        trad 16.04.19✎ 15:54 | 
        офф тест2
 "https://presale.tophr.kz/corews?wsdl"; | |||
| 11
    
        trad 16.04.19✎ 15:56 | 
        офф тест3
 "http://aa.bb.cc/" | |||
| 12
    
        Gobo 17.04.19✎ 07:02 | 
        (6) 
 Исправлены, ПараметрыSoap="<?xml version=""1.0"" encoding=""windows-1251""?> |<soapenv:Envelope xmlns:soapenv=""http://schemas.xmlsoap.org/soap/envelope/"" xmlns:core=""http://core.webservice.config.core.auction.bas.com/""> |<soapenv:Header/> |<soapenv:Body> |<core:createEntities> | <auth_key>0c18fd768c0cdab0ee41d4c605314259dff9b8cf8c8e4c3a0cb1e24090482c963190d643fe58b75f1bcb45e05cd861c1</auth_key> |<secret_key>8724112f3bf585cbb872f77562d06920d9b613327267dbf4f9190e99f0e35a82</secret_key> |<data_content>![CDATA[{""Организации"": [{ |""Ref"": ""eaf3d8f2-5207-11e5-9b29-000c293829c4"", |""Код"": ""000000001"", |""Наименование"": ""ТОО Cloudmaker""}]} |]] |</data_content> |<!--Optional:--> |<batchId>201</batchId> |<!--Optional:--> |<data_type>json</data_type> |</core:createEntities> |</soapenv:Body> |</soapenv:Envelope>"; | |||
| 13
    
        Gobo 17.04.19✎ 07:03 | 
        Точки запятые форум добавляет, я без них вставлял.     | |||
| 14
    
        Gobo 17.04.19✎ 07:07 | 
        (1) Все обновления сделал, результат тот же.     | |||
| 15
    
        Gobo 17.04.19✎ 07:08 | 
        На 8-ке у меня код так реализован:
 Определения = Новый WSОпределения(«адрес моего сервиса»); Прокси = Новый WSПрокси(Определения, «http://core.webservice.com/»,»CoreWebServiceImplService»,»CoreWebServiceImplPort»); Схема=»http://www.w3.org/2001/XMLSchema»; ТекТекст=»Тут содержимое передаваемого документа»; ТипXDTO_data_content = Прокси.ФабрикаXDTO.Тип(Схема, «string»); ОбъектXDTO_data_content = Прокси.ФабрикаXDTO.Создать(ТипXDTO_data_content,ТекТекст); ТипXDTO_batchId = Прокси.ФабрикаXDTO.Тип(Схема, «int»); ОбъектXDTO_batchId = Прокси.ФабрикаXDTO.Создать(ТипXDTO_batchId,201); ТипXDTO_data_type = Прокси.ФабрикаXDTO.Тип(Схема, «string»); ОбъектXDTO_data_type = Прокси.ФабрикаXDTO.Создать(ТипXDTO_data_type,»XML»); ДанныеОтправки = Прокси.createEntities(ОбъектXDTO_data_content, ОбъектXDTO_batchId, ОбъектXDTO_data_type); Сообщить(ДанныеОтправки); | |||
| 16
    
        Gobo 17.04.19✎ 07:18 | 
        (7) как мне тут указать, чтобы он вызвал метод - createEntities ?
 Сервис находиться тут: https://presale.tophr.kz/corews?wsdl | |||
| 17
    
        trad 17.04.19✎ 08:05 | 
        Неопознанная ошибка на об.status?     | |||
| 18
    
        Gobo 17.04.19✎ 12:35 | 
        (17) да,
 и объект пустой в отладчике. | |||
| 19
    
        trad 17.04.19✎ 16:59 | 
        //*******************************************
 Процедура Сформировать() ПараметрыSoap = "<?xml version=""1.0"" encoding=""windows-1251""?> |<soapenv:Envelope xmlns:soapenv=""http://schemas.xmlsoap.org/soap/envelope/"" xmlns:core=""http://core.webservice.config.core.auction.bas.com/""> |<soapenv:Header/> |<soapenv:Body> |<core:createEntities> |<auth_key>0c18fd768c0cdab0ee41d4c605314259dff9b8cf8c8e4c3a0cb1e24090482c963190d643fe58b75f1bcb45e05cd861c1</auth_key> |<secret_key>8724112f3bf585cbb872f77562d06920d9b613327267dbf4f9190e99f0e35a82</secret_key> |<data_content>![CDATA[{""Организации"": [{ |""Ref"": ""eaf3d8f2-5207-11e5-9b29-000c293829c4"", |""Код"": ""000000001"", |""Наименование"": ""ТОО Cloudmaker""}]} |]] |</data_content> |<batchId>201</batchId> |<data_type>json</data_type> |</core:createEntities> |</soapenv:Body> |</soapenv:Envelope> |"; Query = СоздатьОбъект("Msxml2.XMLHTTP"); Query.open("POST", "https://presale.tophr.kz/corews", 0); Query.setRequestHeader("Content-Type", "text/xml; charset=windows-1251"); Query.setRequestHeader("SOAPAction", "http://core.webservice.config.core.auction.bas.com/#CoreWebServiceImplService:CoreWebServiceImplPort"); Query.send(ПараметрыSoap); Если Query.status <> 200 Тогда Сообщить(Query.status); Сообщить(Query.statusText); Иначе Сообщить("Ok"); //Сообщить(Query.responseXml); Сообщить(Query.responseText); КонецЕсли; КонецПроцедуры | |||
| 20
    
        trad 17.04.19✎ 16:59 | 
        Ok
 <?xml version="1.0" ?><S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/"><S:Body><ns2:createEntitiesResponse xmlns:ns2="http://core.webservice.config.core.auction.bas.com/"><return>[0:0]={5730}</return></ns2:createEntitiesResponse></S:Body></S:Envelope> | |||
| 21
    
        trad 17.04.19✎ 17:00 | 
        Windows 7 32
 обновления все установлены | |||
| 22
    
        Gobo 18.04.19✎ 07:19 | 
        (19) Спасибо большое, работает !
 Хочу в качестве спасибо отправить 0.003 BTC, если напишешь адрес. Получается моя ошибка была в этой строке: Query.open("POST", "https://presale.tophr.kz/corews",0); На счет библиотеки, у клиентов могут быть с этим проблемы. Можно эту обработку переделать на использование библиотеки - v7plus.dll ? | |||
| 23
    
        Ёпрст гуру 18.04.19✎ 07:34 | 
        (22) храни все нужные библиотеки в самой ert в мокселе, при старте поделкии проверяй их наличие в системе, при отсутствии извлекай и устанавливай.  И v7plus.dll тоже может быть не зарегена. Проще 1cpp использовать, там есть встроенный xml     | |||
| 24
    
        Ёпрст гуру 18.04.19✎ 07:36 | 
        Хотя, тебе нужна mxmln3 и ее методы. Храни ее и извлекай/регистрируй при необходимости     | |||
| 25
    
        trad 18.04.19✎ 09:39 | 
        (22) "Хочу в качестве спасибо отправить 0.003 BTC, если напишешь адрес."
 спасибо, не надо | |||
| 26
    
        trad 18.04.19✎ 09:40 | 
        (23) "храни все нужные библиотеки в самой ert в мокселе,"
 ТС, не делай так никогда | |||
| 27
    
        trad 18.04.19✎ 09:46 | 
        (22) "Можно эту обработку переделать на использование библиотеки - v7plus.dll ?" можно, но я ей не пользуюсь
 использую компонентами windows. на современных win все это есть Во-первых Msxml2.XMLHTTP имеет .responseXml - там готовый DOM-документ, бери да перебирай, хочешь просто перебором, хочешь xpath-ами Во-вторых .send(ПараметрыSoap) на вход умеет получать не только строку, но и тот же DOM-документ | |||
| 28
    
        trad 18.04.19✎ 09:49 | ||||
| 29
    
        Gobo 18.04.19✎ 11:56 | 
        (27) Да, дом это хорошо.
 На VBA его часто использую. | |||
| 30
    
        Gobo 18.04.19✎ 13:42 | 
        B код читабельнее:
 [CODE] 
[/CODE] | |||
| 31
    
        Ёпрст гуру 18.04.19✎ 18:10 | 
        (26) почему ?     | |||
| 32
    
        trad 19.04.19✎ 09:53 | 
        (31) совершенно не нужное шаманство, усложняющее систему без необходимости     | |||
| 33
    
        Ёпрст гуру 19.04.19✎ 11:42 | 
        (32) ааа.. я то думал, что-то религиозное, может :)     | 
 
 | Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |