【发布时间】:2013-11-07 02:05:18
【问题描述】:
function ShowMessage() {
var url = '/primes/PrimesServlet';
var result = CQ.HTTP.eval(url);
var i = Number(document.getElementById("input").value);
var str = document.getElementById("test");
// if(result.checkPrimes(i)) // Want to call here
str.innerHTML = i + " là số nguyên tố";
// else str.innerHTML = i + " là hợp số";
document.getElementById("output").style.display="block";
}
public class PrimesServlet extends HttpServlet {
public boolean checkPrimes(long n) {
boolean _return;
MillerRabin obj = new MillerRabin();
_return = obj.checkPrimes(n);
return _return;
}
}
我想从我的函数ShowMessage() 中调用方法checkPrimes(long n),但我不能。
【问题讨论】:
-
您需要通过 AJAX 请求调用它,因为您的 java 代码在您的服务器上运行,并且您的 JavaScript 在客户端执行。将 Java 方法公开为 Web 服务,从您的 JS 中创建一个 XMLHttpRequest,并使您的 Java 方法的返回类型可以序列化并在前端解析。
标签: java javascript servlets