GWT アプリで JSNI 呼び出しからネイティブ Java 関数を実行しようとしています。次のようになります。
パッケージ foo.client;
public class AAA は、EntryPoint、UIupdate を実装します {
public native void initChangeFunc() /*-{
$wnd.jsChangeView = function () {
this.@foo.client.AAA::changeToHistory();
alert("got here");
};
}-*/;
public void changeToHistory() {
Window.alert("Hello World");
//Change view here.
this.changeView("history");
this.changeHistoryView("bydate");
};
...
public void onModuleLoad() {
...
this.initChangeFunc();
}
}
フロントエンドで jsChangeView() 関数呼び出しをリンク onclick() にアタッチしてクリックすると、「ここに来ました」アラートが発生しますが、「Hello World」アラートは発生せず、他の 2 つの関数も実行されません。GWT は私の専門分野ではありませんし、これは私のアプリでもありません。そのため、ここで何か基本的なことが欠けていることはわかっています。テイカーはいますか?