Hendy Irawan created WICKET-5135:
------------------------------------

             Summary: wicket-atmosphere EventBus constructor throws 
NullPointerException under invalid state
                 Key: WICKET-5135
                 URL: https://issues.apache.org/jira/browse/WICKET-5135
             Project: Wicket
          Issue Type: Bug
          Components: wicket-atmosphere
    Affects Versions: 6.6.0
            Reporter: Hendy Irawan
            Assignee: Emond Papegaaij


With invalid configuration, like the WebApplication not yet associated with the 
servlet, wicket-atmosphere throws NPE.

{code}
Caused by: org.springframework.beans.factory.BeanCreationException: Error 
creating bean with name 'atmosphereEventBus' defined in class 
id.co.bippo.springapp.AppConfig: Instantiation of bean failed; nested exception 
is org.springframework.beans.factory.BeanDefinitionStoreException: Factory 
method [public org.apache.wicket.atmosphere.EventBus 
id.co.bippo.springapp.AppConfig.atmosphereEventBus()] threw exception; nested 
exception is java.lang.NullPointerException
        at 
org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:581)
 ~[spring-beans-3.2.2.RELEASE.jar:3.2.2.RELEASE]
        at 
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1031)
 ~[spring-beans-3.2.2.RELEASE.jar:3.2.2.RELEASE]
        at 
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:927)
 ~[spring-beans-3.2.2.RELEASE.jar:3.2.2.RELEASE]
        at 
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:490)
 ~[spring-beans-3.2.2.RELEASE.jar:3.2.2.RELEASE]
        at 
org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:461)
 ~[spring-beans-3.2.2.RELEASE.jar:3.2.2.RELEASE]
        at 
org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:314)
 ~[spring-beans-3.2.2.RELEASE.jar:3.2.2.RELEASE]
        at 
org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:194)
 ~[spring-beans-3.2.2.RELEASE.jar:3.2.2.RELEASE]
        at 
org.springframework.beans.factory.support.DefaultListableBeanFactory.findAutowireCandidates(DefaultListableBeanFactory.java:910)
 ~[spring-beans-3.2.2.RELEASE.jar:3.2.2.RELEASE]
        at 
org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:853)
 ~[spring-beans-3.2.2.RELEASE.jar:3.2.2.RELEASE]
        at 
org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:768)
 ~[spring-beans-3.2.2.RELEASE.jar:3.2.2.RELEASE]
        at 
org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:486)
 ~[spring-beans-3.2.2.RELEASE.jar:3.2.2.RELEASE]
        ... 107 common frames omitted
Caused by: org.springframework.beans.factory.BeanDefinitionStoreException: 
Factory method [public org.apache.wicket.atmosphere.EventBus 
id.co.bippo.springapp.AppConfig.atmosphereEventBus()] threw exception; nested 
exception is java.lang.NullPointerException
        at 
org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:181)
 ~[spring-beans-3.2.2.RELEASE.jar:3.2.2.RELEASE]
        at 
org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:570)
 ~[spring-beans-3.2.2.RELEASE.jar:3.2.2.RELEASE]
        ... 117 common frames omitted
Caused by: java.lang.NullPointerException: null
        at org.apache.wicket.atmosphere.EventBus.<init>(EventBus.java:113) 
~[wicket-atmosphere-0.8.jar:0.8]
        at 
id.co.bippo.springapp.SoluvasWebApplication.getEventBus(SoluvasWebApplication.java:296)
 ~[SoluvasWebApplication.class:na]
        at 
id.co.bippo.springapp.AppConfig.atmosphereEventBus(AppConfig.java:270) 
~[AppConfig.class:na]
        at 
id.co.bippo.springapp.AppConfig$$EnhancerByCGLIB$$a9c1dc07.CGLIB$atmosphereEventBus$1(<generated>)
 ~[spring-core-3.2.2.RELEASE.jar:na]
        at 
id.co.bippo.springapp.AppConfig$$EnhancerByCGLIB$$a9c1dc07$$FastClassByCGLIB$$40a0fc3e.invoke(<generated>)
 ~[spring-core-3.2.2.RELEASE.jar:na]
        at 
org.springframework.cglib.proxy.MethodProxy.invokeSuper(MethodProxy.java:228) 
~[spring-core-3.2.2.RELEASE.jar:3.2.2.RELEASE]
        at 
org.springframework.context.annotation.ConfigurationClassEnhancer$BeanMethodInterceptor.intercept(ConfigurationClassEnhancer.java:286)
 ~[spring-context-3.2.2.RELEASE.jar:3.2.2.RELEASE]
        at 
id.co.bippo.springapp.AppConfig$$EnhancerByCGLIB$$a9c1dc07.atmosphereEventBus(<generated>)
 ~[spring-core-3.2.2.RELEASE.jar:na]
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
~[na:1.7.0_15]
        at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) 
~[na:1.7.0_15]
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
 ~[na:1.7.0_15]
        at java.lang.reflect.Method.invoke(Method.java:601) ~[na:1.7.0_15]
        at 
org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:160)
 ~[spring-beans-3.2.2.RELEASE.jar:3.2.2.RELEASE]
        ... 118 common frames omitted
{code}

It should wrap the NPE in a more descriptive error. Suggestion: "Provided 
Wicket WebApplication is not associated with a ServletContext. Please ensure 
Wicket application is fully initialized before creating Atmosphere EventBus."

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to