SOAP на парсере
virusav 22.04.2015 12:08
/ 22.04.2015 13:10
Всем привет.
Пробую реализовать работу SOAP, но не все понятно.
Разбираю WSDL, формирую структуру в виде хеша.
Далее формирую XML, отправляю серверу 1С и получаю ответ.
Первые вопросы:
1. Как на основании названия метода (операции) правильно определить NS?
В одном WSDL идет указание soapAction, а в другом - нет.
Я иду таким путем: перебираю porttype и проверяю, есть ли в них нужная операция, после чего беру NS (tns:Function) и через NS в definitions получаю nsX.
2. Встречал ли кто-нибудь тестовые сервера, где можно "обкатать" работу с SOAP?
Нужно учесть различные варианты с префиксами, NS и т.д.
Для локального проекта можно сделать упрощенную модель, но хочется сделать универсально.
3. Как через xdoc загрузить xml-ответ?
$sHTML[<?xml version="1.0" encoding="UTF-8"?><soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Header/>
<soap:Body>
<m:FunctionResponse xmlns:m="www">
<m:return xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<abc xmlns="my_ns">temp</abc>
</m:return>
</m:FunctionResponse>
</soap:Body>
</soap:Envelope>]
$sHTML[^sHTML.replace[<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">;<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:my_ns="http://schemas.xmlsoap.org/soap/envelope/"]]
$xdData[^xdoc::create{$sHTML}]
Возникает ошибка:
Entity: line 2: parser error : error parsing attribute name
<soap:Header/>
- SOAP на парсере, virusav 22.04.2015 12:08 / 22.04.2015 13:10
- Re: SOAP на парсере [серверная часть], virusav 08.05.2015 13:25
- Re: SOAP на парсере [part: element || type], virusav 27.04.2015 13:48
- Re: SOAP на парсере [тестирование класса], virusav 27.04.2015 12:52
- Ответ, G_Z [M] 22.04.2015 13:35
- Ответ, virusav 22.04.2015 13:46
- Ответ, G_Z [M] 22.04.2015 13:51
- Ответ, virusav 22.04.2015 14:04
- Ответ, G_Z [M] 22.04.2015 14:06
- Ответ, virusav 22.04.2015 14:12
- Ответ, G_Z [M] 22.04.2015 14:15
- Ответ, virusav 22.04.2015 14:19