|
Веб-сервис, входящий xdto преобразовать в xml
| ☑ |
0
Трипиэль
11.10.16
✎
17:53
|
Всем, привет.
У меня есть веб-сервис. У него метод с параметром типа, описанного с помощью xdto-пакета. Вот этот параметр я хочу преобразовать в xml через ФабрикуXDTO.
Конструкция типа:
Запись = Новый ЗаписьXML;
Запись.УстановитьСтроку();
ФабрикаXDTO.ЗаписатьXML(Запись, ВходящийОбъект, ЛокальноеИмя, URIПространстваИмен, , НазначениеТипаXML.Явное);
ДанныеXML = Запись.Закрыть();
не работает, видимо, потому что у входящего объекта тип значения определен не моей внутренней фабрикой. То есть, как я понимаю, мне надо создать фабрику на основании входящего объекта, что-то типа:
МояФабрика = Новый ФабрикаXDTO(ВходящийОбъект);
Но это тоже не работает.
Вариант обходить всю структуру по порядку оставил на крайний случай.
Помогите кто чем может)) Спасибо.
|
|
1
Fragster
гуру
11.10.16
✎
18:21
|
очень непонятно написано. может быть поможет тестовая обработка из (получение фабрики из wsdl там есть)
|
|
2
Oncl
11.10.16
✎
18:35
|
ЗаписьXML = Новый ЗаписьXML;
ЗаписьXML.УстановитьСтроку();
ФабрикаXDTO.ЗаписатьXML(ЗаписьXML, Incoming_data);
XmlText = ЗаписьXML.Закрыть();
|
|
3
Oncl
11.10.16
✎
18:36
|
Incoming_data это входящий xml пакет веб сервиса
|
|
4
Трипиэль
12.10.16
✎
09:25
|
(1) спасибо, но получение фабрики из wdsl тут ни при чём.
|
|
5
Asmody
12.10.16
✎
09:32
|
(0) Надо брать фабрику от веб-сервиса.
|
|
6
Stepa86
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Определение этой самой обработки, и поэтому шла ругань на тип.
|
|