使用GWT可视化API进行凝视时的一系列异常。 $ wnd.google未定义

时间:2013-03-19 20:40:06

标签: gwt charts visualization smartgwt

我在这里试图展示我的PieChart

我把下面的代码

public void onModuleLoad() {
    // Create a callback to be called when the visualization API
    // has been loaded.
    Runnable onLoadCallback = new Runnable() {
      public void run() {
        Panel panel = RootPanel.get();

        // Create a pie chart visualization.
        PieChart pie = new PieChart(createTable(), createOptions());

        pie.addSelectHandler(createSelectHandler(pie));
        panel.add(pie);
      }
    };

    // Load the visualization api, passing the onLoadCallback to be called
    // when loading is done.
    VisualizationUtils.loadVisualizationApi(onLoadCallback, PieChart.PACKAGE);
  }

由于GWT省略了Runnable(?作为单线程javascript模型),它永远不会进入run方法(我真的很想我们为什么给出了这个示例代码)。

在有了clues here之后,我写了

<script type="text/javascript">
        google.load("visualization", "1", {'packages' : ["corechart"] });
</script>

添加之后,即使在stackTrace中也只有一行更改。在我整个晚上消失后,我仍然使用以下stackTrace。

com.google.gwt.core.client.JavaScriptException: (TypeError): $wnd.google.visualization is undefined
    at com.google.gwt.dev.shell.BrowserChannelServer.invokeJavascript(BrowserChannelServer.java:248)
    at com.google.gwt.dev.shell.ModuleSpaceOOPHM.doInvoke(ModuleSpaceOOPHM.java:136)
    at com.google.gwt.dev.shell.ModuleSpace.invokeNative(ModuleSpace.java:561)
    at com.google.gwt.dev.shell.ModuleSpace.invokeNativeObject(ModuleSpace.java:269)

看到错误后,我找到了一些解决方案,让我在主页$wnd.google.visualization is undefined中添加脚本标记

即使没有运气。

我错过了什么吗?

有关此问题的任何线索吗?

P.S我添加了chartsvisualization个罐子并在我的gwt.xml文件中继承了

1 个答案:

答案 0 :(得分:4)

将以下代码段添加到html文档:

 <script type="text/javascript" src="http://www.google.com/jsapi"></script>
 <script type="text/javascript">
    google.load("visualization", "1", {'packages' : ["corechart"] });
 </script>