Javascript から Java メソッドを呼び出す必要があります。だから私はメソッドを定義しました:
private native void registerMethod() /*-{
var self = this;
$wnd.test = function(longParam) {
self.@mypackage.HomeView::test(Ljava/lang/Long;)(longParam);
};
}-*/;
Java メソッド:
private void test(Long longParam) {
GWT.log("Call to test with longParam = " + longParam);
}
JS 呼び出し:
public static native void paypalClose() /*-{
$wnd.alert(top.test);
top.test(10);
top.dgFlow.closeFlow();
top.close();
}-*/;
アラートには、Javascript 関数の定義が表示されます。を呼び出すtop.test()
と機能しますが、パラメーターは渡されません。しかし、私が呼び出すtop.test(10)
と、null アラート ウィンドウが表示されます。