调试Eclipse中的GWT Overlay对象

时间:2013-07-20 18:14:15

标签: eclipse debugging gwt gwt2 jsni

我在GWT应用程序中使用JS Overlay对象。调试应用程序时,我无法看到Overlay对象的值。是否使用GWT覆盖对象的限制。 是因为Overlay对象是本机对象..?如果是限制,是否有任何未来的计划在GWT中为Overlay对象提供调试支持。?

[我无法上传图片。所以输入我在调试窗口中看到的内容]

> customer= JavaScriptObject$ (id=52)
  > hostedmodeReference= JsValusOOPHM (id=183)
    > value= BrowserChannel$JsObjectRef (id=188)
        refId= 2

GWT版本2.5.1

2 个答案:

答案 0 :(得分:1)

这将从JavscriptObject打印json字符串。

// Print it to the log
GWT.log(new JSONObject(customer).toString()); 

// Popup window
Window.alert(new JSONObject(customer).toString()); 

答案 1 :(得分:1)

GWT中的覆盖类型是一种非常特殊的野兽,使用字节码重写来实现。有关(可能有点过时)的详细信息,请参阅https://code.google.com/p/google-web-toolkit/wiki/OverlayTypes

作为Suresh points out in the comments,它在GWT中对它有低级支持,但IDE必须使用它进行无缝集成。

Pending that integration,您可以在调试会话期间直接在IDE的“监视”视图(或类似)中使用实用程序类:

com.google.gwt.core.ext.debug.JsoEval.call(MyJso.class, myJso, "myMethod")