我必须从JS调用WS操作。我在JS中编写了以下代码 -
function fnCallWS()
{ alert("Inside function");
var xmlhttp = new XMLHttpRequest();
xmlhttp.open("POST", "http://10.216.46.185:7014/XYZService/XYZService", true);
xmlhttp.setRequestHeader("Content-Type", "text/xml");
xmlhttp.onreadystatechange = function () {
if (xmlhttp.readyState == 4) {
alert(xmlhttp.responseText);
}
}
var sr = '<?xml version="1.0" encoding="utf-8"?>'+'<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">'+
'<soap:Body>'+
'<ns1:XYZOPERATION_IOFS_REQ xmlns:ns1="http://abc.xyz.com/service/XYZService">'+
'<ns1:Application-Details-IO>'+
'<ns1:LEADID>ORTEST1</ns1:LEADID>'+
'</ns1:Application-Details-IO>'+
'</ns1:XYZOPERATION_IOFS_REQ>'+
'</soap:Body>'+'</soap:Envelope>';
xmlhttp.send(sr);
}
我的WSDL网址是这样的 - http://10.216.46.185:7014/XYZService/XYZService?WSDL 我无法弄清楚我做错了什么,因为我已经提到了各种例子,在许多例子中,使用了相同的方法。 我的Web服务写得正确,因为当我使用SoapUI工具调用时,我可以得到响应。
答案 0 :(得分:0)
事实证明这毕竟是一个CORS问题。我的Weblogic服务器配置不正确。启用“跨域”选项并添加允许的服务器后,此问题已得到解决。