Имя: Пароль:
1C
1С v8
Запрос к вебсервису вылетает с ошибкой "неверный формат"
0 alexshape
 
18.08.21
12:30
Привет всем. Дергаю вебсервис через метод "SendRequest". Передаю туда "ОбъектXDTO" (для надежности тип взял прям напрямую "Прокси.ТочкаПодключения.Интерфейс.Операции[0].Параметры[0].Тип". но все равно вылетает с ошибкой

"{ВнешняяОбработка.СоздатьОбъектSOAP.Форма.Форма.Форма(113)}: Ошибка при вызове метода контекста (SendRequest)
        Прокси.SendRequest(ОбъектXDTO);
по причине:
При вызове веб-сервиса произошла ошибка. Ошибка вызова операции сервиса:  <ИмяВебСеривса>
по причине:
Неверный формат.")



    ЧтениеXML = Новый ЧтениеXML;
    ЧтениеXML.УстановитьСтроку(СокрЛП(Текстзапроса));
    ОбъектXDTO = Прокси.ФабрикаXDTO.ПрочитатьXML(ЧтениеXML, Прокси.ТочкаПодключения.Интерфейс.Операции[0].Параметры[0].Тип);
    
    Попытка
        Прокси.SendRequest(ОбъектXDTO);    
    Исключение    
        Сообщить(ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()));
    КонецПопытки;
1 Beduin
 
18.08.21
12:33
Если задан тип, значение которого не может быть прочитано из XML или значение не может быть прочитано по причине неподходящего представления в XML, то будет вызвано исключение.
2 alexshape
 
18.08.21
12:40
(1) не совсем понятно, ошибка возникает в момент вызова метода "Прокси.SendRequest(ОбъектXDTO); " из XML я прочитал успешно, даже его проверить и меня есть ОбъектXDTO  который я отправляю в качестве параметра, но вылезает эта ошибка
3 lodger
 
18.08.21
12:59
(2) Операции[0] и SendRequest это одно и то же? точно?
4 lodger
 
18.08.21
13:00
Прокси.ТочкаПодключения.Интерфейс.Операции.Получить("SendRequest").Параметры[0].Тип
5 alexshape
 
18.08.21
13:02
(3) да
6 alexshape
 
18.08.21
13:02
(4) и так тоже не работает
7 acht
 
18.08.21
13:12
Ошибка-то вылетает у кого? У вызывающего, который не может уложить тип в операцию вызова, или уже сервера, который что-то не может переварить у себя и присылает тебе ответ с ошибкой?
8 lodger
 
18.08.21
13:15
ЧтениеXML.УстановитьСтроку(СокрЛП(Текстзапроса));
сюда надо запихать ПараметрыЧтенияXML
9 alexshape
 
19.08.21
11:46
решение найдено.
Подробное описание в https://infostart.ru/1c/articles/721872/

Кратко суть в том что принимающая сторона не может прожевать тот запрос что автоматически генерит 1с,

Обертка <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
    <soapenv:Body>  ....   обязательна. Кстати может есть способ заставить ее это делать?
AdBlock убивает бесплатный контент. 1Сергей