从JavaScript(AJAX)调用和使用JBoss Web服务
我正在摆弄JBOSS的Web服务,我创建了以下内容:从JavaScript(AJAX)调用和使用JBoss Web服务,java,javascript,ajax,web-services,jboss,Java,Javascript,Ajax,Web Services,Jboss,我正在摆弄JBOSS的Web服务,我创建了以下内容: http://127.0.0.1:8080/IM/TestService?wsdl 现在,我需要从JavaScript从该Web服务访问Web方法 假设我在TestService中有一个名为foo的web方法,如何对其进行ajax调用 我尝试通过http://127.0.0.1:8080/IM/TestService/foo,但我得到了HTTP状态404。我编写了以下JavaScript,允许我从JBoss Web服务调用Web方法 依赖关
http://127.0.0.1:8080/IM/TestService?wsdl
现在,我需要从JavaScript从该Web服务访问Web方法
假设我在TestService中有一个名为foo的web方法,如何对其进行ajax调用
我尝试通过http://127.0.0.1:8080/IM/TestService/foo,但我得到了HTTP状态404。我编写了以下JavaScript,允许我从JBoss Web服务调用Web方法 依赖关系 取决于jQuery和XML Objectifier
免责声明:这仍然是非常未经测试的,因此它仍然会炸毁您的计算机您是否尝试过使用SoapUI或curl或Firefox海报插件访问服务器?如果你不能与他们连接,那么你的JBOSS配置就很糟糕。
var WS = function (url, ns, nsName) {
return function (method, parameters, callback) {
var i, j, para, soapBody = new SOAPObject(method), sr, response;
soapBody.ns = {
name: nsName,
uri: ns
};
if (typeof parameters === "function") {
callback = parameters;
} else if (parameters && parameters.length) {
for (i = 0, j = parameters.length; i < j; ++i) {
para = parameters[i];
soapBody.appendChild(new SOAPObject(para.name)).val(para.value);
}
}
sr = new SOAPRequest(method, soapBody);
SOAPClient.Proxy = url;
SOAPClient.SendRequest(sr, function (r) {
response = r.Body[0][method + "Response"][0]["return"][0]["Text"];
if (callback) {
callback.call(sr, response);
}
});
}
};
var ws = WS("http://127.0.0.1:8080/IM/TestService", "http://wservices/", "ns2");
ws("foo", [{name: "name", value:"dreas"}], function (r) {
console.log(r);
});