ClassCastException - 无法将JavaScriptObject强制转换为java.lang.String

时间:2012-05-08 10:35:23

标签: javascript gwt

我的GWT应用程序正在抛出此异常:

Caused by: java.lang.ClassCastException: com.google.gwt.core.client.JavaScriptObject$ cannot be cast to java.lang.String

通过JSNI获取此函数的String响应时:

public final native String data()/*-{
    return $wnd.getdata();
}-*/;

}

这是Javascript代码:

  function getdata(){
    var data = MyObject.data();
    console.log(data);
    return data;
  }

我正在记录Firebug的数据输出,这是输出(检查js函数是否实际返回了一些东西):

  

-0.00030517578125,0.00006103515625,0.00115966796875,0.00146484375,-0.00091552734375,-0.000946044921875,-0.001983642578125,-0.003997802734375,-0.005126953125,-0.00360107421875,-0.0032958984375,-0.004119873046875,-0.00433349609375,-0.0023193359375,-0.0008544921875,-0.003448486328125,-0.00347900390625 ,-0.0054931640625,-0.0067138671875,-0.005279541015625,-0.006072998046875,

1 个答案:

答案 0 :(得分:1)

一个简单的解决方案可能是$wnd.getdata().toString();,但也许你应该尝试typeof $wnd.getdata()来看看这个类型到底是什么 - 也许这是一个潜伏在其他地方的错误。