gpt4 book ai didi

javascript - 无法使用 javascript (html) 调用 WebMethod

转载 作者:行者123 更新时间:2023-12-03 09:54:18 25 4
gpt4 key购买 nike

CalculadoraWebService:

package in.gruporia.javawebservice;

import javax.jws.WebService;
import javax.jws.WebMethod;
import javax.jws.WebParam;

@WebService(serviceName = "CalculadoraWebService")
public class CalculadoraWebService {

//Retorna la SUMA de dos numeros enteros
@WebMethod(operationName = "AddIntegers")
public int add(@WebParam(name = "firstNum") int num1, @WebParam(name = "secondNum") int num2) {
return num1 + num2;
}

//Retorna la RESTA de dos numeros enteros
@WebMethod(operationName = "SubIntegers")
public int sub(@WebParam(name = "firstNum") int num1, @WebParam(name = "secondNum") int num2) {
return num1 - num2;
}

//Retorna el PRODUCTO de dos numeros enteros
@WebMethod(operationName = "MulIntegers")
public int mul(@WebParam(name = "firstNum") int num1, @WebParam(name = "secondNum") int num2) {
return num1 * num2;
}

//Retorna la DIVISION de dos numeros enteros
@WebMethod(operationName = "DivideIntegers")
public int div(@WebParam(name = "firstNum") int num1, @WebParam(name = "secondNum") int num2) {
return num1 / num2;
}

}

<小时/>

索引.html

<html>
<head>
<title>UseSwap</title>
<script>
var service;
function InitializeService(){
service.useService("http://localhost:8080/Calculadora/CalculadoraWebService?wsdl", "CalculadoraWebService");
}
var num1, num2, result;
function Add(){
num1 = document.DemoForm.Numero1.value;
console.log(num1);
num2 = document.DemoForm.Numero2.value;
console.log(num2);
result = service.CalculadoraWebService.callService("add", num1, num2);
console.log(result);
alert(event.result.value);
}


</script>
</head>

<body onload="InitializeService()" id="service"
style="behavior:url(webservice.htc)">

<form name="DemoForm">
Numero 1 : <input type="text" name="Numero1"/>

Numero 2 : <input type="text" name="Numero2"/>
<button onclick="Add()">Resultado</button>
</form>
</body>
</html>
<小时/>

CalculadoraWebService 工作正常,我在预览练习中使用 java 调用了所有方法,但现在我必须使用 javascript 来完成它。num1 和 num2 值正常,但出现错误

SCRIPT5007: Unable to get property 'callService' of undefined or null reference

最佳答案

我相信你有范围问题,将 service 定义为初始化它的函数之外的 var,这是代码片段:

var service; //add this
function InitializeService(){
service.useService("http://localhost:8080/Calculadora/CalculadoraWebService?wsdl", "GetSumService");
}

如果您不在函数 InitializeService 之外声明 service,Js 会在该函数的作用域内声明该变量,然后当您尝试在 Add 中使用它时函数,该函数的范围不会看到 service var。

关于javascript - 无法使用 javascript (html) 调用 WebMethod,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30788754/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com