Uploaded image for project: 'Weld'
  1. Weld
  2. WELD-1421

Ugly NPE when passivation capable bean has a null id

    XMLWordPrintable

Details

    • Bug
    • Resolution: Done
    • Minor
    • 2.0.1.Final
    • 2.0.0.Final
    • None
    • None

    Description

      Adding a passivation-capable bean with null id in AfterBeanDiscovery results in an ugly NPE, a nicer error message should be generated instead.

      java.lang.NullPointerException
              at java.util.concurrent.ConcurrentHashMap.hash(ConcurrentHashMap.java:333)
              at java.util.concurrent.ConcurrentHashMap.putIfAbsent(ConcurrentHashMap.java:1145)
              at org.jboss.weld.serialization.ContextualStoreImpl.putIfAbsent(ContextualStoreImpl.java:92)
              at org.jboss.weld.manager.BeanManagerImpl.addBean(BeanManagerImpl.java:493)
              at org.jboss.weld.manager.BeanManagerImpl.addBean(BeanManagerImpl.java:463)
              at org.jboss.weld.bootstrap.events.AfterBeanDiscoveryImpl.processBean(AfterBeanDiscoveryImpl.java:86)
              at org.jboss.weld.bootstrap.events.AfterBeanDiscoveryImpl.addBean(AfterBeanDiscoveryImpl.java:72)
              at org.jboss.solder.logging.TypedMessageLoggerExtension.installBeans(TypedMessageLoggerExtension.java:77)
              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:601)
              at org.jboss.weld.injection.MethodInjectionPoint.invokeOnInstanceWithSpecialValue(MethodInjectionPoint.java:93)
              at org.jboss.weld.event.ObserverMethodImpl.sendEvent(ObserverMethodImpl.java:274)
              at org.jboss.weld.event.ExtensionObserverMethodImpl.sendEvent(ExtensionObserverMethodImpl.java:121)
              at org.jboss.weld.event.ObserverMethodImpl.sendEvent(ObserverMethodImpl.java:261)
              at org.jboss.weld.event.ObserverMethodImpl.notify(ObserverMethodImpl.java:240)
              at org.jboss.weld.event.ObserverNotifier.notifyObserver(ObserverNotifier.java:170)
              at org.jboss.weld.event.ObserverNotifier.notifyObservers(ObserverNotifier.java:129)
              at org.jboss.weld.event.ObserverNotifier.fireEvent(ObserverNotifier.java:103)
              at org.jboss.weld.bootstrap.events.AbstractContainerEvent.fire(AbstractContainerEvent.java:63)
              at org.jboss.weld.bootstrap.events.AbstractDefinitionContainerEvent.fire(AbstractDefinitionContainerEvent.java:35)
              at org.jboss.weld.bootstrap.events.AfterBeanDiscoveryImpl.fire(AfterBeanDiscoveryImpl.java:53)
              at org.jboss.weld.bootstrap.WeldBootstrap.deployBeans(WeldBootstrap.java:515)
              at org.jboss.as.weld.WeldStartService.start(WeldStartService.java:62)
              at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1974)
              at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1907)
              at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
              at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
              at java.lang.Thread.run(Thread.java:722)
      "}}
      
      

      Attachments

        Activity

          People

            bafco Matus Abaffy (Inactive)
            maschmid@redhat.com Marek Schmidt
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: