使用JSNI从手写的Javascript调用JAVA方法
using JSNI to call JAVA methof from handwritten Javascript
我有一段我写的代码,我不明白为什么它不工作
我写过:
public class MyUtility {
public static int computeLoanInterest(int amt, float interestRate, int term) {
return (amt*term);
}
public static native void exportStaticMethod() /*-{
$wnd.computeLoanInterest =
$entry(@com.myapp.appname.client.MyUtility::computeLoanInterest(IFI));
}-*/;
}
Java入口点:
public void onModuleLoad() {
MyUtility.exportStaticMethod();
}
和我手写的javascript代码:
<head>
<script type="text/javascript" language="javascript" src="projv1/projv1.nocache.js"></script>
<script type="text/javascript">
function mainl(){
var it=window.computeLoanInterest(5,2,2);
alert(it);
}
</script>
</head>
<body onload="mainl()">
</body>
但是我在浏览器的控制台上得到一个错误:
Uncaught TypeError: undefined不是一个函数
通过JSNI
导出到JavaScript
后调用更精确、更准确的函数
public static native void exportStaticMethod() /*-{
$wnd.computeLoanInterest = $entry(@com.myapp.appname.client.MyUtility::computeLoanInterest(IFI));
$wnd.mainl();
}-*/;
应该可以:
public static native void exportStaticMethod() /*-{
$wnd.computeLoanInterest = function(amt, interestRate, term) {
return ($entry(@com.myapp.appname.client.MyUtility::computeLoanInterest(IFI))(amt, interestRate, term));
}
}-*/;
相关文章:
- 从javascript调用asp.net codebehind函数
- 如何使用javascript调用Php文件
- Can用户'MediaWiki上的自定义JavaScript调用Lua模块
- 从Javascript调用Applet方法
- php javascript代码从javascript调用php函数
- 是否可以从html中的javascript调用.vbs文件
- 从javascript调用C#Web服务并使用它(json格式)
- 如何用javascript调用函数,然后在滚动事件中调用该函数的特定实例
- Sinon Spy不使用Javascript调用或应用程序
- 使用javascript调用javawebservice
- 从javascript调用服务器端的下拉列表onchange函数
- 单击按钮时,使用Javascript调用并返回值
- 函数1结束后,JavaScript调用函数2
- 对wcf服务的javascript调用
- 使用JavaScript调用Excel文件
- 从JavaScript调用JAX-WSWeb服务时参数为Null
- 从javascript调用codeigniter方法并传递数据
- 使用usinf-if语句javascript调用函数
- 通过Javascript调用php文件
- 从javascript调用flash点击事件