Гаджет WSO2 не может получить доступ к полезной нагрузке SOAP
Я создал службу данных, которая правильно проверяет через TryIt и SoapUI. Однако, когда я пытаюсь включить его в гаджет, я всегда получаю эту ошибку:
"Произошла ошибка при ретрансляции полезной нагрузки SOAP в конечную точку https://data.stratoslive.wso2.com/services/t/inova8.com/ProductVendorDataService.SOAP11Endpoint/" Гаджет содержит этот фрагмент: function doSOAPCall () {var endpoint = " https://data.stratoslive.wso2.com/services/t/inova8.com/ProductVendorDataService.SOAP11Endpoint/"; var payload = ""; var operation = "urn: getproduct"; document.getElementById ("response-disp"). innerHTML = wso2.io.makeSOAPRequest (конечная точка, операция, полезная нагрузка); }
Служба данных основана на примере http://wso2.org/library/tutorials/2011/11/expose-your-cloud-data-as-rdf-data-model. Обратите внимание, что операция не требует параметров, но я попробовал каждый вариант полезной нагрузки без успеха.
1 ответ
Я попробовал ваши действия и обнаружил, что с вашим сегментом гаджет-кода есть две проблемы для выполнения вызова SOAP.
Во-первых, поскольку операция, к которой вы обращаетесь из конечной точки службы данных, не требует какой-либо полезной нагрузки для ее передачи. Так что внутри xml-гаджета необходимо установить полезную нагрузку как 'null'[NOT payload=""].
Вторая проблема заключается в том, что указанное вами имя операции в гаджете xml неверно. Как только я попробовал вашу службу данных с помощью опции try-it, я обнаружил, что имя вашей операции доступа - "_getProduct", а не "getProduct".
После исправления двух проблем SOAP-гаджет хорошо работает с вашей конечной точкой и может получить ответ на гаджет из вашей операции доступа. Исправленный сегмент кода для функции doSOAPCall() приведен ниже.
function doSOAPCall() {var endpoint = "https://data.stratoslive.wso2.com/services/t/inova8.com/ProductVendorDataService.SOAP11Endpoint/"; var payload = null; var operation = "urn: _getproduct"; document.getElementById ("response-disp"). innerHTML = wso2.io.makeSOAPRequest (конечная точка, операция, полезная нагрузка); }
Спасибо;
Lalaji