Я создал веб-сервис Axis, используя Eclipse (Indigo), используя AXIS по умолчанию из нового, другого веб-сервиса.У меня он работает нормально и принимает звонки и возвращает данные от тестера Ecplipse (проводник Webservice).Я также использовал WSDL в .net, вызвал его оттуда и получил данные без каких-либо проблем.
Однако мне нужно позвонить из jQuery, я использую ссылку Google CDN 1.7.1.
Когда я так называю,
// enables cross-site scripting in jQuery
jQuery.support.cors = true;
var soapMessage =
'<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:q0="http://webservice.website.test.com" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> \
<soapenv:Body> \
<q0:helloworld /> \
</helloworld> \
</soapenv:Body> \
</soapenv:Envelope>';
$.ajax({
type: "POST",
url: this._baseURL + method,
requestHeaders: "",
data: soapMessage,
contentType: "text/xml; charset=utf-8",
dataType: "xml",
SOAPAction: this._baseURL + method,
success: function(msg)
{
alert(msg);
},
error: function (XMLHttpRequest, textStatus, errorThrown)
{
alert(errorThrown);
}
});
}
Я использовалполучить ошибку soapaction обратно, я добавил soapaction, и теперь я получаю,
нет заголовка SOAPAction!
Кстати, я на том же домене localhost, я установил cors на всякий случай.
Есть идеи, как это сделать в jQuery?
Я не обновлял Axis до Axis2, это было бы рекомендовано?