Question

I am using JS Overlay objects in my GWT application. When Debugging the application, I am not able to see the value of Overlay object. Is it a limitation of Using GWT overlay objects.? Is it because Overlay object is a native Object..? If it is a limitation, Is there any future plan to bring debugging support for Overlay objects in GWT.?

[I am not able to upload images. So typing what I see in the debug window]

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

GWT version 2.5.1

Was it helpful?

Solution

Overlay types in GWT are a very special beast and are implemented using bytecode rewriting. See https://code.google.com/p/google-web-toolkit/wiki/OverlayTypes for (maybe a bit outdated) details.

As Suresh points out in the comments, there's low-level support for it in GWT but then IDEs have to use it for a seamless integration.

Pending that integration, you can use the utility class directly in the “watch” view (or similar) in your IDE during a debugging session:

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

OTHER TIPS

This will print the json string from the JavscriptObject.

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

// Popup window
Window.alert(new JSONObject(customer).toString()); 
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top