Getting NPE with 2.4.3.Final widget bean wiring
hr.stoyanov Dec 25, 2013 10:55 PMHi all,
I seem to be consistently getting NPE( see below) when trying to use Errai widgets. In my case I go a step further that what is shown in the tutorial or any of the examples: I create a list widgets/beans at the top level , then for each widget in the list, I create another list of different widgets/beans. (The errai tutorial shows only the trivial example when you create a one-level list of widgets, where each item widget is linked to "term" bean). I spent quite some time debugging the problem and it seems like Errai widget/bean instantiation/wiring logic falls apart after the first level. I suspect I am doing something wrong, but not sure what. I attached some code to demonstrate that causes the NPE issue.
Thanks in advance for any help.
--------------------------------------------------------------------------------------------------
00:04:37.289 [ERROR] Async Task Execution Failed. Future executions (if any) are cancelled.
com.google.gwt.event.shared.UmbrellaException: Exception caught: error in bean initialization
at com.google.gwt.event.shared.HandlerManager.fireEvent(HandlerManager.java:129)
at com.google.gwt.user.client.impl.HistoryImpl.fireEvent(HistoryImpl.java:80)
at com.google.gwt.event.logical.shared.ValueChangeEvent.fire(ValueChangeEvent.java:43)
at com.google.gwt.user.client.impl.HistoryImpl.fireHistoryChangedImpl(HistoryImpl.java:87)
at com.google.gwt.user.client.History.fireCurrentHistoryState(History.java:131)
at org.jboss.errai.ui.nav.client.local.Navigation$2.run(Navigation.java:115)
at org.jboss.errai.common.client.api.extension.InitVotes$OneTimeRunnable.run(InitVotes.java:398)
at org.jboss.errai.common.client.api.extension.InitVotes._runAllRunnables(InitVotes.java:370)
at org.jboss.errai.common.client.api.extension.InitVotes._runAllRunnables(InitVotes.java:355)
at org.jboss.errai.common.client.api.extension.InitVotes.finishInit(InitVotes.java:340)
at org.jboss.errai.common.client.api.extension.InitVotes.access$3(InitVotes.java:335)
at org.jboss.errai.common.client.api.extension.InitVotes$1.run(InitVotes.java:184)
at org.jboss.errai.common.client.api.tasks.ClientTaskManager$ClientAsyncTask.run(ClientTaskManager.java:89)
at org.jboss.errai.common.client.api.tasks.ClientTaskManager$TaskManagerTimer.run(ClientTaskManager.java:190)
at com.google.gwt.user.client.Timer.fire(Timer.java:149)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at com.google.gwt.dev.shell.MethodAdaptor.invoke(MethodAdaptor.java:103)
at com.google.gwt.dev.shell.MethodDispatch.invoke(MethodDispatch.java:71)
at com.google.gwt.dev.shell.OophmSessionHandler.invoke(OophmSessionHandler.java:172)
at com.google.gwt.dev.shell.BrowserChannelServer.reactToMessagesWhileWaitingForReturn(BrowserChannelServer.java:338)
at com.google.gwt.dev.shell.BrowserChannelServer.invokeJavascript(BrowserChannelServer.java:219)
at com.google.gwt.dev.shell.ModuleSpaceOOPHM.doInvoke(ModuleSpaceOOPHM.java:136)
at com.google.gwt.dev.shell.ModuleSpace.invokeNative(ModuleSpace.java:571)
at com.google.gwt.dev.shell.ModuleSpace.invokeNativeObject(ModuleSpace.java:279)
at com.google.gwt.dev.shell.JavaScriptHost.invokeNativeObject(JavaScriptHost.java:91)
at com.google.gwt.core.client.impl.Impl.apply(Impl.java)
at com.google.gwt.core.client.impl.Impl.entry0(Impl.java:242)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at com.google.gwt.dev.shell.MethodAdaptor.invoke(MethodAdaptor.java:103)
at com.google.gwt.dev.shell.MethodDispatch.invoke(MethodDispatch.java:71)
at com.google.gwt.dev.shell.OophmSessionHandler.invoke(OophmSessionHandler.java:172)
at com.google.gwt.dev.shell.BrowserChannelServer.reactToMessages(BrowserChannelServer.java:293)
at com.google.gwt.dev.shell.BrowserChannelServer.processConnection(BrowserChannelServer.java:547)
at com.google.gwt.dev.shell.BrowserChannelServer.run(BrowserChannelServer.java:364)
at java.lang.Thread.run(Thread.java:744)
Caused by: java.lang.RuntimeException: error in bean initialization
at org.jboss.errai.ioc.client.container.AbstractCreationalContext.fireAllInitCallbacks(AbstractCreationalContext.java:200)
at org.jboss.errai.ioc.client.container.SimpleCreationalContext.finish(SimpleCreationalContext.java:177)
at org.jboss.errai.ioc.client.container.IOCDependentBean.newInstance(IOCDependentBean.java:74)
at org.jboss.errai.ioc.client.container.SyncToAsyncBeanManagerAdpater$1.newInstance(SyncToAsyncBeanManagerAdpater.java:159)
at org.jboss.errai.ui.client.widget.ListWidget.init(ListWidget.java:172)
at org.jboss.errai.ui.client.widget.ListWidget.setItems(ListWidget.java:140)
at com.peruncs.s4g.web.gwt.client.local.test.TestPage.pageShown(TestPage.java:42)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at com.google.gwt.dev.shell.MethodAdaptor.invoke(MethodAdaptor.java:103)
at com.google.gwt.dev.shell.MethodDispatch.invoke(MethodDispatch.java:71)
at com.google.gwt.dev.shell.OophmSessionHandler.invoke(OophmSessionHandler.java:172)
at com.google.gwt.dev.shell.BrowserChannelServer.reactToMessagesWhileWaitingForReturn(BrowserChannelServer.java:338)
at com.google.gwt.dev.shell.BrowserChannelServer.invokeJavascript(BrowserChannelServer.java:219)
at com.google.gwt.dev.shell.ModuleSpaceOOPHM.doInvoke(ModuleSpaceOOPHM.java:136)
at com.google.gwt.dev.shell.ModuleSpace.invokeNative(ModuleSpace.java:571)
at com.google.gwt.dev.shell.ModuleSpace.invokeNativeVoid(ModuleSpace.java:299)
at com.google.gwt.dev.shell.JavaScriptHost.invokeNativeVoid(JavaScriptHost.java:107)
at org.jboss.errai.ui.nav.client.local.spi.GeneratedNavigationGraph$6._330629166_pageShown(GeneratedNavigationGraph.java)
at org.jboss.errai.ui.nav.client.local.spi.GeneratedNavigationGraph$6.pageShown(GeneratedNavigationGraph.java:284)
at org.jboss.errai.ui.nav.client.local.spi.GeneratedNavigationGraph$6.pageShown(GeneratedNavigationGraph.java:1)
at org.jboss.errai.ui.nav.client.local.Navigation$3.callback(Navigation.java:280)
at org.jboss.errai.ui.nav.client.local.Navigation$3.callback(Navigation.java:1)
at org.jboss.errai.ioc.client.container.SyncToAsyncBeanManagerAdpater$1.getInstance(SyncToAsyncBeanManagerAdpater.java:148)
at org.jboss.errai.ui.nav.client.local.spi.GeneratedNavigationGraph$6.produceContent(GeneratedNavigationGraph.java:254)
at org.jboss.errai.ui.nav.client.local.Navigation.showPage(Navigation.java:269)
at org.jboss.errai.ui.nav.client.local.Navigation.navigate(Navigation.java:211)
at org.jboss.errai.ui.nav.client.local.Navigation.access$1(Navigation.java:194)
at org.jboss.errai.ui.nav.client.local.Navigation$1.onValueChange(Navigation.java:107)
at com.google.gwt.event.logical.shared.ValueChangeEvent.dispatch(ValueChangeEvent.java:128)
at com.google.gwt.event.logical.shared.ValueChangeEvent.dispatch(ValueChangeEvent.java:1)
at com.google.gwt.event.shared.GwtEvent.dispatch(GwtEvent.java:1)
at com.google.web.bindery.event.shared.EventBus.dispatchEvent(EventBus.java:40)
at com.google.web.bindery.event.shared.SimpleEventBus.doFire(SimpleEventBus.java:193)
at com.google.web.bindery.event.shared.SimpleEventBus.fireEvent(SimpleEventBus.java:88)
at com.google.gwt.event.shared.HandlerManager.fireEvent(HandlerManager.java:127)
at com.google.gwt.user.client.impl.HistoryImpl.fireEvent(HistoryImpl.java:80)
at com.google.gwt.event.logical.shared.ValueChangeEvent.fire(ValueChangeEvent.java:43)
at com.google.gwt.user.client.impl.HistoryImpl.fireHistoryChangedImpl(HistoryImpl.java:87)
at com.google.gwt.user.client.History.fireCurrentHistoryState(History.java:131)
at org.jboss.errai.ui.nav.client.local.Navigation$2.run(Navigation.java:115)
at org.jboss.errai.common.client.api.extension.InitVotes$OneTimeRunnable.run(InitVotes.java:398)
at org.jboss.errai.common.client.api.extension.InitVotes._runAllRunnables(InitVotes.java:370)
at org.jboss.errai.common.client.api.extension.InitVotes._runAllRunnables(InitVotes.java:355)
at org.jboss.errai.common.client.api.extension.InitVotes.finishInit(InitVotes.java:340)
at org.jboss.errai.common.client.api.extension.InitVotes.access$3(InitVotes.java:335)
at org.jboss.errai.common.client.api.extension.InitVotes$1.run(InitVotes.java:184)
at org.jboss.errai.common.client.api.tasks.ClientTaskManager$ClientAsyncTask.run(ClientTaskManager.java:89)
at org.jboss.errai.common.client.api.tasks.ClientTaskManager$TaskManagerTimer.run(ClientTaskManager.java:190)
at com.google.gwt.user.client.Timer.fire(Timer.java:149)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at com.google.gwt.dev.shell.MethodAdaptor.invoke(MethodAdaptor.java:103)
at com.google.gwt.dev.shell.MethodDispatch.invoke(MethodDispatch.java:71)
at com.google.gwt.dev.shell.OophmSessionHandler.invoke(OophmSessionHandler.java:172)
at com.google.gwt.dev.shell.BrowserChannelServer.reactToMessagesWhileWaitingForReturn(BrowserChannelServer.java:338)
at com.google.gwt.dev.shell.BrowserChannelServer.invokeJavascript(BrowserChannelServer.java:219)
at com.google.gwt.dev.shell.ModuleSpaceOOPHM.doInvoke(ModuleSpaceOOPHM.java:136)
at com.google.gwt.dev.shell.ModuleSpace.invokeNative(ModuleSpace.java:571)
at com.google.gwt.dev.shell.ModuleSpace.invokeNativeObject(ModuleSpace.java:279)
at com.google.gwt.dev.shell.JavaScriptHost.invokeNativeObject(JavaScriptHost.java:91)
at com.google.gwt.core.client.impl.Impl.apply(Impl.java)
at com.google.gwt.core.client.impl.Impl.entry0(Impl.java:242)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at com.google.gwt.dev.shell.MethodAdaptor.invoke(MethodAdaptor.java:103)
at com.google.gwt.dev.shell.MethodDispatch.invoke(MethodDispatch.java:71)
at com.google.gwt.dev.shell.OophmSessionHandler.invoke(OophmSessionHandler.java:172)
at com.google.gwt.dev.shell.BrowserChannelServer.reactToMessages(BrowserChannelServer.java:293)
at com.google.gwt.dev.shell.BrowserChannelServer.processConnection(BrowserChannelServer.java:547)
at com.google.gwt.dev.shell.BrowserChannelServer.run(BrowserChannelServer.java:364)
at java.lang.Thread.run(Thread.java:744)
Caused by: java.lang.NullPointerException: null
at org.jboss.errai.common.client.api.Assert.notNull(Assert.java:56)
at org.jboss.errai.databinding.client.BindableListWrapper.<init>(BindableListWrapper.java:44)
at org.jboss.errai.ui.client.widget.ListWidget.setItems(ListWidget.java:134)
at org.jboss.errai.ui.client.widget.ListWidget.setValue(ListWidget.java:236)
at org.jboss.errai.ui.client.widget.ListWidget.setValue(ListWidget.java:230)
at org.jboss.errai.ui.client.widget.ListWidget.setValue(ListWidget.java:1)
at org.jboss.errai.databinding.client.BindableProxyAgent.updateWidgetsAndFireEvent(BindableProxyAgent.java:309)
at org.jboss.errai.databinding.client.BindableProxyAgent.updateWidgetsAndFireEvent(BindableProxyAgent.java:277)
at org.jboss.errai.databinding.client.BindableProxyAgent.ensureBoundListIsProxied(BindableProxyAgent.java:387)
at org.jboss.errai.databinding.client.BindableProxyAgent.bind(BindableProxyAgent.java:153)
at org.jboss.errai.databinding.client.api.DataBinder.bind(DataBinder.java:209)
at org.jboss.errai.ioc.client.BootstrapperImpl$36$3.init(BootstrapperImpl.java:617)
at org.jboss.errai.ioc.client.BootstrapperImpl$36$3.init(BootstrapperImpl.java:1)
at org.jboss.errai.ioc.client.container.AbstractCreationalContext.fireAllInitCallbacks(AbstractCreationalContext.java:196)
at org.jboss.errai.ioc.client.container.SimpleCreationalContext.finish(SimpleCreationalContext.java:177)
at org.jboss.errai.ioc.client.container.IOCDependentBean.newInstance(IOCDependentBean.java:74)
at org.jboss.errai.ioc.client.container.SyncToAsyncBeanManagerAdpater$1.newInstance(SyncToAsyncBeanManagerAdpater.java:159)
at org.jboss.errai.ui.client.widget.ListWidget.init(ListWidget.java:172)
at org.jboss.errai.ui.client.widget.ListWidget.setItems(ListWidget.java:140)
at com.peruncs.s4g.web.gwt.client.local.test.TestPage.pageShown(TestPage.java:42)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at com.google.gwt.dev.shell.MethodAdaptor.invoke(MethodAdaptor.java:103)
at com.google.gwt.dev.shell.MethodDispatch.invoke(MethodDispatch.java:71)
at com.google.gwt.dev.shell.OophmSessionHandler.invoke(OophmSessionHandler.java:172)
at com.google.gwt.dev.shell.BrowserChannelServer.reactToMessagesWhileWaitingForReturn(BrowserChannelServer.java:338)
at com.google.gwt.dev.shell.BrowserChannelServer.invokeJavascript(BrowserChannelServer.java:219)
at com.google.gwt.dev.shell.ModuleSpaceOOPHM.doInvoke(ModuleSpaceOOPHM.java:136)
at com.google.gwt.dev.shell.ModuleSpace.invokeNative(ModuleSpace.java:571)
at com.google.gwt.dev.shell.ModuleSpace.invokeNativeVoid(ModuleSpace.java:299)
at com.google.gwt.dev.shell.JavaScriptHost.invokeNativeVoid(JavaScriptHost.java:107)
at org.jboss.errai.ui.nav.client.local.spi.GeneratedNavigationGraph$6._330629166_pageShown(GeneratedNavigationGraph.java)
at org.jboss.errai.ui.nav.client.local.spi.GeneratedNavigationGraph$6.pageShown(GeneratedNavigationGraph.java:284)
at org.jboss.errai.ui.nav.client.local.spi.GeneratedNavigationGraph$6.pageShown(GeneratedNavigationGraph.java:1)
at org.jboss.errai.ui.nav.client.local.Navigation$3.callback(Navigation.java:280)
at org.jboss.errai.ui.nav.client.local.Navigation$3.callback(Navigation.java:1)
at org.jboss.errai.ioc.client.container.SyncToAsyncBeanManagerAdpater$1.getInstance(SyncToAsyncBeanManagerAdpater.java:148)
at org.jboss.errai.ui.nav.client.local.spi.GeneratedNavigationGraph$6.produceContent(GeneratedNavigationGraph.java:254)
at org.jboss.errai.ui.nav.client.local.Navigation.showPage(Navigation.java:269)
at org.jboss.errai.ui.nav.client.local.Navigation.navigate(Navigation.java:211)
at org.jboss.errai.ui.nav.client.local.Navigation.access$1(Navigation.java:194)
at org.jboss.errai.ui.nav.client.local.Navigation$1.onValueChange(Navigation.java:107)
at com.google.gwt.event.logical.shared.ValueChangeEvent.dispatch(ValueChangeEvent.java:128)
at com.google.gwt.event.logical.shared.ValueChangeEvent.dispatch(ValueChangeEvent.java:1)
at com.google.gwt.event.shared.GwtEvent.dispatch(GwtEvent.java:1)
at com.google.web.bindery.event.shared.EventBus.dispatchEvent(EventBus.java:40)
at com.google.web.bindery.event.shared.SimpleEventBus.doFire(SimpleEventBus.java:193)
at com.google.web.bindery.event.shared.SimpleEventBus.fireEvent(SimpleEventBus.java:88)
at com.google.gwt.event.shared.HandlerManager.fireEvent(HandlerManager.java:127)
at com.google.gwt.user.client.impl.HistoryImpl.fireEvent(HistoryImpl.java:80)
at com.google.gwt.event.logical.shared.ValueChangeEvent.fire(ValueChangeEvent.java:43)
at com.google.gwt.user.client.impl.HistoryImpl.fireHistoryChangedImpl(HistoryImpl.java:87)
at com.google.gwt.user.client.History.fireCurrentHistoryState(History.java:131)
at org.jboss.errai.ui.nav.client.local.Navigation$2.run(Navigation.java:115)
at org.jboss.errai.common.client.api.extension.InitVotes$OneTimeRunnable.run(InitVotes.java:398)
at org.jboss.errai.common.client.api.extension.InitVotes._runAllRunnables(InitVotes.java:370)
at org.jboss.errai.common.client.api.extension.InitVotes._runAllRunnables(InitVotes.java:355)
at org.jboss.errai.common.client.api.extension.InitVotes.finishInit(InitVotes.java:340)
at org.jboss.errai.common.client.api.extension.InitVotes.access$3(InitVotes.java:335)
at org.jboss.errai.common.client.api.extension.InitVotes$1.run(InitVotes.java:184)
at org.jboss.errai.common.client.api.tasks.ClientTaskManager$ClientAsyncTask.run(ClientTaskManager.java:89)
at org.jboss.errai.common.client.api.tasks.ClientTaskManager$TaskManagerTimer.run(ClientTaskManager.java:190)
at com.google.gwt.user.client.Timer.fire(Timer.java:149)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at com.google.gwt.dev.shell.MethodAdaptor.invoke(MethodAdaptor.java:103)
at com.google.gwt.dev.shell.MethodDispatch.invoke(MethodDispatch.java:71)
at com.google.gwt.dev.shell.OophmSessionHandler.invoke(OophmSessionHandler.java:172)
at com.google.gwt.dev.shell.BrowserChannelServer.reactToMessagesWhileWaitingForReturn(BrowserChannelServer.java:338)
at com.google.gwt.dev.shell.BrowserChannelServer.invokeJavascript(BrowserChannelServer.java:219)
at com.google.gwt.dev.shell.ModuleSpaceOOPHM.doInvoke(ModuleSpaceOOPHM.java:136)
at com.google.gwt.dev.shell.ModuleSpace.invokeNative(ModuleSpace.java:571)
at com.google.gwt.dev.shell.ModuleSpace.invokeNativeObject(ModuleSpace.java:279)
at com.google.gwt.dev.shell.JavaScriptHost.invokeNativeObject(JavaScriptHost.java:91)
at com.google.gwt.core.client.impl.Impl.apply(Impl.java)
at com.google.gwt.core.client.impl.Impl.entry0(Impl.java:242)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at com.google.gwt.dev.shell.MethodAdaptor.invoke(MethodAdaptor.java:103)
at com.google.gwt.dev.shell.MethodDispatch.invoke(MethodDispatch.java:71)
at com.google.gwt.dev.shell.OophmSessionHandler.invoke(OophmSessionHandler.java:172)
at com.google.gwt.dev.shell.BrowserChannelServer.reactToMessages(BrowserChannelServer.java:293)
at com.google.gwt.dev.shell.BrowserChannelServer.processConnection(BrowserChannelServer.java:547)
at com.google.gwt.dev.shell.BrowserChannelServer.run(BrowserChannelServer.java:364)
at java.lang.Thread.run(Thread.java:744)
-
errai-issue.zip 9.2 KB