读书人

透过js调用java与.net 开发的webservi

发布时间: 2013-01-19 11:41:36 作者: rapoo

通过js调用java与.net 开发的webservices

如题,以前只试过用js调用.net开发的webservices接口。后来想是否也可以用js调用java开发的接口,通过一整天的时间研究、查资料,发现网上对js调用java接口的资料很少,没办法,只好自己瞎搞,运气不错,终于瞎碰出来了。下面是两个例子:

1.调用.net接口Html代码:
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <head runat="server">
  4. <title></title>
  5. <script type="text/javascript">
  6. function RequestWebService() {
  7. //这是我们在第一步中创建的Web服务的地址
  8. var URL = "http://www.webxml.com.cn/WebServices/TrainTimeWebService.asmx?op=getStationName";
  9. //在这处我们拼接
  10. var data;
  11. data = '<?xml version="1.0" encoding="utf-8"?>';
  12. datadata = data + '<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">';
  13. datadata = data + '<soap:Body>';
  14. datadata = data + '<getStationName xmlns="http://WebXml.com.cn/" >11</getStationName>';
  15. datadata = data + '</soap:Body>';
  16. datadata = data + '</soap:Envelope>';
  17. //创建异步对象
  18. var xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
  19. xmlhttp.Open("POST", URL, false);
  20. xmlhttp.SetRequestHeader("Content-Type", "application/soap+xml");
  21. xmlhttp.SetRequestHeader ("SOAPAction","http://WebXml.com.cn/getStationName");
  22. xmlhttp.Send(data);
  23. document.getElementById("data").innerHTML = xmlhttp.responseText;
  24. alert(xmlhttp.responseText);
  25. }
  26. </script>
  27. </head>
  28. <body>
  29. <form id="form1" runat="server">
  30. <div>
  31. <input id="One" type="button" value="JsCallWebService" onclick="RequestWebService()" />
  32. </div>
  33. <div id="data">
  34. </div>
  35. </form>
  36. </body>
  37. </html>
2.调用java接口Html代码:
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <head runat="server">
  4. <title></title>
  5. <script type="text/javascript">
  6. function RequestWebService() {
  7. //这是我们在第一步中创建的Web服务的地址,这个地址取自wsdl接口描述信息中的service节点中location值
  8. var URL = "http://localhost:8080/test/services/demo";
  9. //在这处我们拼接
  10. var data;
  11. data = '<?xml version="1.0" encoding="utf-8"?>';
  12. datadata = data + '<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">';
  13. datadata = data + '<soap:Body>';
  14. //添加方法与参数
  15. datadata = data + '<getData><arg1>我是第一个参数</arg1><arg2>我是第二个参数</arg2></getData>';
  16. datadata = data + '</soap:Body>';
  17. datadata = data + '</soap:Envelope>';
  18. //创建异步对象
  19. var xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
  20. xmlhttp.Open("POST", URL, false);
  21. xmlhttp.SetRequestHeader("Content-Type", "application/soap+xml");
  22. xmlhttp.Send(data);
  23. document.getElementById("data").innerHTML = xmlhttp.responseText;
  24. }
  25. </script>
  26. </head>
  27. <body>
  28. <form id="form1" runat="server">
  29. <div>
  30. <input id="One" type="button" value="JsCallWebService" onclick="RequestWebService()" />
  31. </div>
  32. <div id="data">
  33. </div>
  34. </form>
  35. </body>
  36. </html>

读书人网 >Web前端

热点推荐