Имя: Пароль:
1C
1С v8
Возвращать нормальный XML при ответе веб-сервиса
0 Shalfee
 
04.05.13
13:04
Привет! Хотелось бы на запрос веб-сервиса 1С-ного, получать в отчет XML структуру. Настроил, так чтобы веб-сервис возвращал тип string, при этом ответ веб-сервиса выглядит так:

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
   <soap:Header/>
   <soap:Body>
       <m:SalesReportResponse xmlns:m="http://gazintech.ru/">
           <m:return xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">&lt;Reply&gt;
   &lt;IsError&gt;false&lt;/IsError&gt;
   &lt;Comment/&gt;
   &lt;Result&gt;
...

Подскажите пожалуйста, как убрать &lt; и прочие. Или может вообще я не  так делаю :) Спасибо!
1 1Сергей
 
04.05.13
13:08
2 Fragster
 
гуру
04.05.13
13:08
(0) все правильно
3 Fragster
 
гуру
04.05.13
13:09
на стороне клиента твоя строка сама превратится в нормальный XML, если там не ручной разбор XML, а Soap клиент
4 Fragster
 
гуру
04.05.13
13:10
еще можно возвращать не строку а объектXDTO
5 Shalfee
 
04.05.13
13:10
(1) не совсем понял что имеешь ввиду. &lt; это замена <, 1С-ка как-будто преобразовывается XML текст и экранирует спец символы XML =(
6 Shalfee
 
04.05.13
13:15
(4) Ага, но не хотелось бы так. Если не ошибаюсь, тогда надо было бы описывать XDTO пакет, что как плюс дало бы то, что web-сервис описывал бы параметр на выходе и была бы проще интеграция с моим веб-сервисом. Но время на это к сожалению пока нет =(
7 Fragster
 
гуру
04.05.13
13:17
(6) не обязательно. можно сделать возвращаемое значение anytype и лепить объект с произвольными свойствами
8 mistеr
 
04.05.13
15:05
(6) А придется.
9 sikuda
 
04.05.13
17:23
(0) Странно еще есть люди которые не прочитали мою статью: http://infostart.ru/public/167093/
10 Shalfee
 
05.05.13
00:26
(7) То есть все равно XDTO объект придется формировать для выхода?

(8) Да, интересно было бы реализовать, но случай не тот. Случайные клиенты подключаться к сервису не будут, формат жестко задан. Вообще лучше всего для передачи данных отойти
от XML в качестве возвращаемого значение, и использовать какой-нибудь JSON или base64 (кстати отлично работает со сжатием).

(9) Спасибо, толковая статья, так примерно и предполагал реализовать. Также на php+sql можно реализовать промежуточный буфер (для снижения нагрузки на 1С).
Ошибка? Это не ошибка, это системная функция.