我正在使用GWT創建僅客戶端的庫。我使用JSNI來調用函數是來自JS的Java。問題是我試圖傳入一個元素或函數處理程序,似乎沒有任何事情發生。我沒有從GWT或JS獲得例外。這是我的JSNI功能與橋樑。將元素/函數處理函數傳遞給gwt函數
public static String testMe(Object obj)
{
return "Response to " + obj.toString();
}
public static native void defineBridgeMethod() /*-{
$wnd.testMe = function(msg) {
return @com.mycompany.mywebapp.client.MyWebApp::testMe(Ljava/lang/Object;);
};
}-*/;
謝謝!
太棒了!這個解決方案可以節省很多代碼,特別是在導出數十種方法時。 – 2012-11-30 09:56:53
Yep @ user1711180這就是出口商的目標,您只需在'安全打字'java中編寫代碼並標記您想要公開的內容,就不用擔心jsni內部和語法。認爲出口商也可以處理類型轉換等。 –