无法通过Javascript从URL调用Web服务

时间:2016-07-26 19:04:21

标签: javascript ajax web-services soap

我必须从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工具调用时,我可以得到响应。

1 个答案:

答案 0 :(得分:0)

事实证明这毕竟是一个CORS问题。我的Weblogic服务器配置不正确。启用“跨域”选项并添加允许的服务器后,此问题已得到解决。