Pass Java Callback Function to JSNI Method?
gwt, java, javascript, jsni
Solution
You can call the callback methods in this way:
native void test(Callback<String, String> callback) /*-{
callback.@com.google.gwt.core.client.Callback::onSuccess(Ljava/lang/Object;)("success!");
}-*/;
Problem
I want to pass a success and a failure callback Java function to a JSNI method. This is what I get so far but it does not work. How can I fix it? ``` package c; public class A { test(new Callback<String, String>() { @Override public void onFailure(String reason) { Window.alert("fail"); } @Override public void onSuccess(String result) { Window.alert("suc"); } }); native void test(Callback<String, String> callback) /*-{ var callback = $entry(function(event) { callback.@c.A.Callback::onSuccess(Ljava/lang/String;)("success!"); }); }-*/; } ```