繁体   English   中英

使用 Javascript 或 jQuery 调用特定的 Web 服务方法

[英]Calling a Specific Web Service Method Using Javascript or jQuery

我在加载 jsp 页面时成功调用了 Web 服务。 我面临的问题是将用户设置为能够按下按钮以在同一 Web 服务上调用不同的方法。 函数“getSS()”应该完成这个,但我认为javascript不会直接读取这种类型的调用。 我找到了调用 Web 服务并向其传递参数的解决方案,但这些解决方案通常不会调用 Web 服务中的特定方法。

这是我的代码,我可以在“getSS()”函数中放入什么来完成此操作? 我已经加载了 jQuery,Web 服务是用 java 编写的。 请注意,我已经编写了完成所有工作的代码,我只需要知道如何调用该特定代码。 其他解决方案似乎都不能满足我的需求。

<%-- 
Document   : index
Created on : May 6, 2016, 9:39:44 AM
Author     : mmarino
--%>

<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title>JSP Page</title>
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.2/jquery.min.js"></script>
    <script type="text/javascript">



        function getSS(){
    var e = document.getElementById("names");
    var daString = e.options[e.selectedIndex].value;
    try {
org.me.calculator.CalculatorWS_Service service = new org.me.calculator.CalculatorWS_Service();
org.me.calculator.CalculatorWS port = service.getCalculatorWSPort();
// TODO process result here
java.lang.String result = port.SS(daString);
document.getElementById('inputhere').innerHTML = "hi";
} catch (Exception ex) {
// TODO handle custom exceptions here
    document.getElementById('inputhere').innerHTML = ex;
}
    }
        </script>
</head>
<body>
    <h1>Hello World!</h1>    <%-- start web service invocation --%><hr/>
    <button value="hi" onclick="getSS()"> Click</button>
    <select id="names">
<%
try {
org.me.calculator.CalculatorWS_Service service = new org.me.calculator.CalculatorWS_Service();
org.me.calculator.CalculatorWS port = service.getCalculatorWSPort();
// TODO process result here

java.lang.String result = port.getNames();
out.println(result);
} catch (Exception ex) {
// TODO handle custom exceptions here
}
%>
<%-- end web service invocation --%>
    </select>
<hr/>
<div id="inputhere">Hi.</div>
</body>

所以看起来我所缺少的只是将该 java 代码设置为一个变量并放置正确的开始和结束语句:

  function doIt(){
<%-- start web service invocation --%>
          var x = <%
try {
org.me.testbilling.TestBillingWS_Service service = new     org.me.testbilling.TestBillingWS_Service();
org.me.testbilling.TestBillingWS port = service.getTestBillingWSPort();
 // TODO initialize WS operation arguments here
java.lang.String name = "Marcel" ;
// TODO process result here
java.lang.String result = port.getSS(name);
out.println(result);
} catch (Exception ex) {
// TODO handle custom exceptions here
}
%>
<%-- end web service invocation --%>

    alert(x);
        }
    </script>

仍然不太确定如何将 "java.lang.String name =" 设置为 javascript 变量。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM