com.google.gwt.event.shared.UmbrellaException: 异常被捕获: (TypeError) @org.moxieapps.gwt.highcharts.client.BaseChart::nativeRenderChart
com.google.gwt.event.shared.UmbrellaException: Exception caught: (TypeError) @org.moxieapps.gwt.highcharts.client.BaseChart::nativeRenderChart
我正在尝试将 'Chart'(HighCharts-Angular 仪表)添加到流量面板。
添加时出现以下异常
com.google.gwt.event.shared.UmbrellaException: Exception caught: (TypeError) @org.moxieapps.gwt.highcharts.client.BaseChart::nativeRenderChart(Ljava/lang/String;Lcom/google/gwt/core/client/JavaScriptObject;ZZLcom/google/gwt/core/client/JavaScriptObject;Lcom/google/gwt/core/client/JavaScriptObject;Lcom/google/gwt/core/client/JavaScriptObject;Lcom/google/gwt/core/client/JavaScriptObject;Lcom/google/gwt/core/client/JavaScriptObject;Lcom/google/gwt/core/client/JavaScriptObject;Lcom/google/gwt/core/client/JavaScriptObject;Lcom/google/gwt/core/client/JavaScriptObject;Lcom/google/gwt/core/client/JavaScriptObject;Lcom/google/gwt/core/client/JavaScriptObject;)([string: 'Chart', JavaScript object(15907), bool: false, bool: false, JavaScript object(15932), JavaScript object(15933), JavaScript object(15934), JavaScript object(15924), JavaScript object(15928), JavaScript object(15923), JavaScript object(15926), JavaScript object(15927), JavaScript object(15930), JavaScript object(15931)]):
b is undefined at com.google.gwt.event.shared.HandlerManager.fireEvent(HandlerManager.java:129) at com.google.gwt.user.client.ui.Widget.fireEvent(Widget.java:129) at com.google.gwt.event.logical.shared.SelectionEvent.fire(SelectionEvent.java:43) at com.google.gwt.user.client.ui.SuggestBox.fireSuggestionEvent(SuggestBox.java:1166) at com.google.gwt.user.client.ui.SuggestBox.setNewSelection(SuggestBox.java:1190) at com.google.gwt.user.client.ui.SuggestBox.access(SuggestBox.java:1185) at com.google.gwt.user.client.ui.SuggestBox.onSuggestionSelected(SuggestBox.java:683) at
Caused by: com.google.gwt.core.client.JavaScriptException: (TypeError) @org.moxieapps.gwt.highcharts.client.BaseChart::nativeRenderChart(Ljava/lang/String;Lcom/google/gwt/core/client/JavaScriptObject;ZZLcom/google/gwt/core/client/JavaScriptObject;Lcom/google/gwt/core/client/JavaScriptObject;Lcom/google/gwt/core/client/JavaScriptObject;Lcom/google/gwt/core/client/JavaScriptObject;Lcom/google/gwt/core/client/JavaScriptObject;Lcom/google/gwt/core/client/JavaScriptObject;Lcom/google/gwt/core/client/JavaScriptObject;Lcom/google/gwt/core/client/JavaScriptObject;Lcom/google/gwt/core/client/JavaScriptObject;Lcom/google/gwt/core/client/JavaScriptObject;)([string: 'Chart', JavaScript object(15907), bool: false, bool: false, JavaScript object(15932), JavaScript object(15933), JavaScript object(15934), JavaScript object(15924), JavaScript object(15928), JavaScript object(15923), JavaScript object(15926), JavaScript object(15927), JavaScript object(15930), JavaScript object(15931)]): b is undefined at com.google.gwt.dev.shell.BrowserChannelServer.invokeJavascript(BrowserChannelServer.java:249) at com.google.gwt.dev.shell.ModuleSpaceOOPHM.doInvoke(ModuleSpaceOOPHM.java:136) at
.
.
我添加了 highcharts.js 、 highcharts-more.js 和 exporting.js 等导入
在我的 GWT.html
但是还是报异常。
请帮忙。
嗨,伊格纳西奥,
感谢您的回复。
我已经调试过了,在highcharts提供的BaseChart class中我找到了b,也就是boolean
这是导致 BaseChart class、
异常的行
chart = nativeRenderChart(
getChartTypeName(),
createNativeOptions(),
toolTip != null && toolTip.getToolTipFormatter() != null,
legend != null && legend.getLabelsFormatter() != null,
chartEventHandlers.getJavaScriptObject(),
seriesEventHandlers.getJavaScriptObject(),
pointEventHandlers.getJavaScriptObject(),
xAxisEventHandlers.getJavaScriptObject(),
yAxisEventHandlers.getJavaScriptObject(),
xAxisLabelFormatters.getJavaScriptObject(),
yAxisLabelFormatters.getJavaScriptObject(),
yAxisStackLabelFormatters.getJavaScriptObject(),
plotOptionsLabelFormatters.getJavaScriptObject(),
seriesLabelFormatters.getJavaScriptObject()
);
从 javascript
http://jsfiddle.net/highcharts/EjRLw/
并添加了以下内容
窗格,
YAxis(刻度位置,宽度,颜色)
GaugePlotOptions(颜色、线宽、堆叠),
系列(点),
工具提示(值后缀)
我正在设置一切。
我验证了设置为 'nativeRenderChart' 方法的所有 14 个对象都不为空。
仍然遇到同样的异常!!!!
一点线索都没有:( !!!
请帮帮我..
这是 JS 的 NullPointerException 等价物。您可能错过了一些图表配置,最终以失败告终。要准确查看发生了什么,推荐的策略是调试您的项目(代码服务器)并使用 chrome 开发工具 "pause on caught exceptions"。这将恰好在此 NPE 处停止,您应该看到缺少什么以及意味着什么 b
。 chrome里面的所有源码你一定要看; Java、JSNI 或依赖的 JS 库。
我已经解决了这个问题。
问题在于以下代码,
GaugePlotOptions plotOptions = new GaugePlotOptions();
// plotOptions.setStacking( Stacking.NORMAL ); <<--- CULPRIT
在 'GaugePlotOptions' 中设置 'Stacking' 导致异常。
删除后图表出现在面板中。
我正在尝试将 'Chart'(HighCharts-Angular 仪表)添加到流量面板。 添加时出现以下异常
com.google.gwt.event.shared.UmbrellaException: Exception caught: (TypeError) @org.moxieapps.gwt.highcharts.client.BaseChart::nativeRenderChart(Ljava/lang/String;Lcom/google/gwt/core/client/JavaScriptObject;ZZLcom/google/gwt/core/client/JavaScriptObject;Lcom/google/gwt/core/client/JavaScriptObject;Lcom/google/gwt/core/client/JavaScriptObject;Lcom/google/gwt/core/client/JavaScriptObject;Lcom/google/gwt/core/client/JavaScriptObject;Lcom/google/gwt/core/client/JavaScriptObject;Lcom/google/gwt/core/client/JavaScriptObject;Lcom/google/gwt/core/client/JavaScriptObject;Lcom/google/gwt/core/client/JavaScriptObject;Lcom/google/gwt/core/client/JavaScriptObject;)([string: 'Chart', JavaScript object(15907), bool: false, bool: false, JavaScript object(15932), JavaScript object(15933), JavaScript object(15934), JavaScript object(15924), JavaScript object(15928), JavaScript object(15923), JavaScript object(15926), JavaScript object(15927), JavaScript object(15930), JavaScript object(15931)]):
b is undefined at com.google.gwt.event.shared.HandlerManager.fireEvent(HandlerManager.java:129) at com.google.gwt.user.client.ui.Widget.fireEvent(Widget.java:129) at com.google.gwt.event.logical.shared.SelectionEvent.fire(SelectionEvent.java:43) at com.google.gwt.user.client.ui.SuggestBox.fireSuggestionEvent(SuggestBox.java:1166) at com.google.gwt.user.client.ui.SuggestBox.setNewSelection(SuggestBox.java:1190) at com.google.gwt.user.client.ui.SuggestBox.access(SuggestBox.java:1185) at com.google.gwt.user.client.ui.SuggestBox.onSuggestionSelected(SuggestBox.java:683) at
Caused by: com.google.gwt.core.client.JavaScriptException: (TypeError) @org.moxieapps.gwt.highcharts.client.BaseChart::nativeRenderChart(Ljava/lang/String;Lcom/google/gwt/core/client/JavaScriptObject;ZZLcom/google/gwt/core/client/JavaScriptObject;Lcom/google/gwt/core/client/JavaScriptObject;Lcom/google/gwt/core/client/JavaScriptObject;Lcom/google/gwt/core/client/JavaScriptObject;Lcom/google/gwt/core/client/JavaScriptObject;Lcom/google/gwt/core/client/JavaScriptObject;Lcom/google/gwt/core/client/JavaScriptObject;Lcom/google/gwt/core/client/JavaScriptObject;Lcom/google/gwt/core/client/JavaScriptObject;Lcom/google/gwt/core/client/JavaScriptObject;)([string: 'Chart', JavaScript object(15907), bool: false, bool: false, JavaScript object(15932), JavaScript object(15933), JavaScript object(15934), JavaScript object(15924), JavaScript object(15928), JavaScript object(15923), JavaScript object(15926), JavaScript object(15927), JavaScript object(15930), JavaScript object(15931)]): b is undefined at com.google.gwt.dev.shell.BrowserChannelServer.invokeJavascript(BrowserChannelServer.java:249) at com.google.gwt.dev.shell.ModuleSpaceOOPHM.doInvoke(ModuleSpaceOOPHM.java:136) at
.
.
我添加了 highcharts.js 、 highcharts-more.js 和 exporting.js 等导入 在我的 GWT.html
但是还是报异常。 请帮忙。
嗨,伊格纳西奥,
感谢您的回复。 我已经调试过了,在highcharts提供的BaseChart class中我找到了b,也就是boolean
这是导致 BaseChart class、
异常的行chart = nativeRenderChart(
getChartTypeName(),
createNativeOptions(),
toolTip != null && toolTip.getToolTipFormatter() != null,
legend != null && legend.getLabelsFormatter() != null,
chartEventHandlers.getJavaScriptObject(),
seriesEventHandlers.getJavaScriptObject(),
pointEventHandlers.getJavaScriptObject(),
xAxisEventHandlers.getJavaScriptObject(),
yAxisEventHandlers.getJavaScriptObject(),
xAxisLabelFormatters.getJavaScriptObject(),
yAxisLabelFormatters.getJavaScriptObject(),
yAxisStackLabelFormatters.getJavaScriptObject(),
plotOptionsLabelFormatters.getJavaScriptObject(),
seriesLabelFormatters.getJavaScriptObject()
);
从 javascript http://jsfiddle.net/highcharts/EjRLw/
并添加了以下内容 窗格, YAxis(刻度位置,宽度,颜色) GaugePlotOptions(颜色、线宽、堆叠), 系列(点), 工具提示(值后缀)
我正在设置一切。 我验证了设置为 'nativeRenderChart' 方法的所有 14 个对象都不为空。
仍然遇到同样的异常!!!! 一点线索都没有:( !!! 请帮帮我..
这是 JS 的 NullPointerException 等价物。您可能错过了一些图表配置,最终以失败告终。要准确查看发生了什么,推荐的策略是调试您的项目(代码服务器)并使用 chrome 开发工具 "pause on caught exceptions"。这将恰好在此 NPE 处停止,您应该看到缺少什么以及意味着什么 b
。 chrome里面的所有源码你一定要看; Java、JSNI 或依赖的 JS 库。
我已经解决了这个问题。 问题在于以下代码,
GaugePlotOptions plotOptions = new GaugePlotOptions();
// plotOptions.setStacking( Stacking.NORMAL ); <<--- CULPRIT
在 'GaugePlotOptions' 中设置 'Stacking' 导致异常。 删除后图表出现在面板中。