Вход | Регистрация

1С:Предприятие :: 1С:Предприятие 8 общая

Веб-сервис, входящий xdto преобразовать в xml

Веб-сервис, входящий xdto преобразовать в xml
Я
   Трипиэль
 
11.10.16 - 17:53
Всем, привет.

У меня есть веб-сервис. У него метод с параметром типа, описанного с помощью xdto-пакета. Вот этот параметр я хочу преобразовать в xml через ФабрикуXDTO.

Конструкция типа:

  Запись = Новый ЗаписьXML;
  Запись.УстановитьСтроку();

  ФабрикаXDTO.ЗаписатьXML(Запись, ВходящийОбъект, ЛокальноеИмя, URIПространстваИмен, , НазначениеТипаXML.Явное);

  ДанныеXML = Запись.Закрыть();

не работает, видимо, потому что у входящего объекта тип значения определен не моей внутренней фабрикой. То есть, как я понимаю, мне надо создать фабрику на основании входящего объекта, что-то типа:

  МояФабрика = Новый ФабрикаXDTO(ВходящийОбъект);

Но это тоже не работает.
Вариант обходить всю структуру по порядку оставил на крайний случай.

Помогите кто чем может)) Спасибо.
 
 
   Fragster
 
1 - 11.10.16 - 18:21
очень непонятно написано. может быть поможет тестовая обработка из http://fragster.ru/wsfor1c/ (получение фабрики из wsdl там есть)
   Oncl
 
2 - 11.10.16 - 18:35
ЗаписьXML = Новый ЗаписьXML;
        
        ЗаписьXML.УстановитьСтроку(); 
        ФабрикаXDTO.ЗаписатьXML(ЗаписьXML, Incoming_data);
        XmlText = ЗаписьXML.Закрыть();
   Oncl
 
3 - 11.10.16 - 18:36
Incoming_data это входящий xml пакет веб сервиса
   Трипиэль
 
4 - 12.10.16 - 09:25
(1) спасибо, но получение фабрики из wdsl тут ни при чём.
   Asmody
 
5 - 12.10.16 - 09:32
(0) Надо брать фабрику от веб-сервиса.
   Stepa86
 
6 - 12.10.16 - 09:34
А если вот так?

ОпределениеWS = Новый WSОпределения( ... ;// или из wsСсылки


фабрика = ОпределениеWS.ФабрикаXDTO;

ответXML = Новый ЧтениеXML;
ответXML.УстановитьСтроку( пТекстОтвета );
    
ответ = фабрика.ПрочитатьXML( ответXML );
   Трипиэль
 
7 - 12.10.16 - 09:55
(6) спасибо.
   Трипиэль
 
8 - 12.10.16 - 09:59
(0) в общем, рабочие оба варианта, и (0) , и (2) . просто я затупил, и вызывал функцию общего модуля из внешней обработки для отладки, и получается, что тип ВходящегоОбъекта был описан не через опубликованный веб-сервис, а через WSОпределение этой самой обработки, и поэтому шла ругань на тип.

Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует