powered by simpleCommunicator - 2.0.52     © 2025 Programmizd 02
Форумы / Разработка информационных систем [игнор отключен] [закрыт для гостей] / Передача XML документа в SOAP
10 сообщений из 10, страница 1 из 1
Передача XML документа в SOAP
    #39256518
vjut
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый вопрос.
Так как SOAP запрос по сути уже сам является xml документом, то встраивание ещё одного документа внутрь запроса достаточно нетривиальная задача.
В связи с этим хотелось бы услышать мнение общественности.


Передавая документ как base64 теряем в читаемости SOAP запроса. А адаптируя структуру исходного документа под запрос вносим нежелательные изменения и в некоторых случаях является недопустимой (к примеру xml подписан и любое изменение его структуры делает подпись недействительной)

Какой способ является наиболее каноническим в данном случае?
...
Рейтинг: 0 / 0
Передача XML документа в SOAP
    #39256585
irbis_al
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vjutДобрый вопрос.
Так как SOAP запрос по сути уже сам является xml документом, то встраивание ещё одного документа внутрь запроса достаточно нетривиальная задача.
В связи с этим хотелось бы услышать мнение общественности.


Передавая документ как base64 теряем в читаемости SOAP запроса. А адаптируя структуру исходного документа под запрос вносим нежелательные изменения и в некоторых случаях является недопустимой (к примеру xml подписан и любое изменение его структуры делает подпись недействительной)

Какой способ является наиболее каноническим в данном случае?

Не знаю...у меня проблем не было(а всё на этом построено)...
передаёте его как строковый параметр...единственное надо не забывать затенять служебные xml символы & <> и т.д.
...
Рейтинг: 0 / 0
Передача XML документа в SOAP
    #39256613
vjut
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
irbis_alединственное надо не забывать затенять служебные xml символы & <> и т.д.
В этом и проблема. Серьезно падает читаемость.
...
Рейтинг: 0 / 0
Передача XML документа в SOAP
    #39256617
irbis_al
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vjutirbis_alединственное надо не забывать затенять служебные xml символы & <> и т.д.
В этом и проблема. Серьезно падает читаемость.

Не ну если Вы глазками человеческими будите читать ,то да...а для машины всё равно.
Мой опыт... у меня ИС...
в SOAPе всего 4 метода
get_table(xml параметры) возвращает xml
execute (xml параметры)
get_blop-clob(xmk параметры) тут перевожу на base64)
И print,команда серверу напечатать документ.
...
Рейтинг: 0 / 0
Передача XML документа в SOAP
    #39256750
mad_nazgul
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vjutДобрый вопрос.
Так как SOAP запрос по сути уже сам является xml документом, то встраивание ещё одного документа внутрь запроса достаточно нетривиальная задача.
В связи с этим хотелось бы услышать мнение общественности.


Передавая документ как base64 теряем в читаемости SOAP запроса. А адаптируя структуру исходного документа под запрос вносим нежелательные изменения и в некоторых случаях является недопустимой (к примеру xml подписан и любое изменение его структуры делает подпись недействительной)

Какой способ является наиболее каноническим в данном случае?

Главное не использовать Eny/EnyType :-)

Т.к. очень часто сталкивался, что заворачивают что-то (документ) в Eny/EnyType.
Очень часто этим грешат всякие самодельные и не очень ESB.

Поэтому если есть возможность, то просто сделайте нормальный контракт(wsdl, xsd).
В котором будет структура пересылаемых "документов".
С одной стороны повысится "читаемость", с другой стороны позволит использовать на ранних этапах отсечь кучу ошибок.
...
Рейтинг: 0 / 0
Передача XML документа в SOAP
    #39258435
Фотография Vincent Vega
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Передача XML документа в SOAP
    #39259010
vjut
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Vincent Vega,

здесь 2 проблемы:
1. нельзя использовать CDATA внутри параметра.
2. А что делать если в передаваемом документе тоже есть блок CDATA?
...
Рейтинг: 0 / 0
Передача XML документа в SOAP
    #39259021
irbis_al
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vjutVincent Vega,

здесь 2 проблемы:
1. нельзя использовать CDATA внутри параметра.
2. А что делать если в передаваемом документе тоже есть блок CDATA?

Я вот не понял в чём чуть проблемы...
Вы используете какие-то уже готовые библиотеки?...Тогда они сами заворачивают и затеняют..
Я использую java ... и передаю xml как строку...
Мне приходит строка.к клиенту и серверу та же строка.
Всё затенение "прячется под компотом реализации" java либы.

И я думаю любая современная библиотека для soap на любом языке программирования это делает.

Другое дело если вы сам разбираете soap request(response) ...
Тогда Вас эти вещи действительно должны интересовать.
...
Рейтинг: 0 / 0
Передача XML документа в SOAP
    #39260359
mad_nazgul
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vjutVincent Vega,

здесь 2 проблемы:
1. нельзя использовать CDATA внутри параметра.
2. А что делать если в передаваемом документе тоже есть блок CDATA?

Если нельзя, но очень хочется, то можно.
Нормально все передавалось , т.е. CDATA в CDATA.
Стандартные маршаллеры/анмаршалерры все отлично экранируют.

А так.
Если у вас есть документ и есть на него контракт (xsd)
То в чем проблема?
...
Рейтинг: 0 / 0
Передача XML документа в SOAP
    #39266852
locked
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vjutДобрый вопрос.
Так как SOAP запрос по сути уже сам является xml документом, то встраивание ещё одного документа внутрь запроса достаточно нетривиальная задача.
В связи с этим хотелось бы услышать мнение общественности.


Передавая документ как base64 теряем в читаемости SOAP запроса. А адаптируя структуру исходного документа под запрос вносим нежелательные изменения и в некоторых случаях является недопустимой (к примеру xml подписан и любое изменение его структуры делает подпись недействительной)

Какой способ является наиболее каноническим в данном случае?
В этом случае запрос оформляется на уровне HTTP как Content-Type: Multipart/Related и твой документ идет как отдельная часть с референсом из SOAP сообщения. см сдесь
...
Рейтинг: 0 / 0
10 сообщений из 10, страница 1 из 1
Форумы / Разработка информационных систем [игнор отключен] [закрыт для гостей] / Передача XML документа в SOAP
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]