[
https://issues.jboss.org/browse/SOLDER-337?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Stuart Douglas updated SOLDER-337:
----------------------------------
Assignee: (was: Stuart Douglas)
This is actually a solder bug, in ProcessObserverMethod solder does not take
into account the possibility that the methods annotated type might be null.
The righfaces push extension registers an observer method programatically,
which causes this condition.
> Solder doesn't work with 7.1.3 and 7.2.0.alpha1-SNAPSHOT
> --------------------------------------------------------
>
> Key: SOLDER-337
> URL: https://issues.jboss.org/browse/SOLDER-337
> Project: Solder
> Issue Type: Bug
> Reporter: Juergen Zimmermann
> Attachments: testcase.zip
>
>
> The attached testcase results in a NPE in a JBoss Solder class when it is
> deployed to 7.1.3.Final and also to 7.2.0.alpha1-SNAPSHOT. It works fine with
> 7.1.2.Final.
> Just do a "mvn package jboss-as:deploy" to invoke the testcase. The testcase
> is preconfigured for 7.1.3. To switch to 7.1.2 or 7.2.0.alpha1 the related
> property is in the beginning of pom.xml
> I'm not sure whether the issue is related to Weld (1.1.8 inside JBoss 7.1.2,
> 1.1.9 inside JBoss 7.1.3, 1.1.10 inside JBoss 7.2) or whether the issue is
> related to Solder. Anyway, this issue prevents an upgrade from JBoss 7.1.2.
> The stacktrace in the JBoss console:
> ...
> INFO [org.jboss.solder.config.xml.bootstrap.XmlConfigExtension] Wrapping
> InjectionTarget to set field values: test.ArticleController
> ERROR [org.jboss.msc.service.fail] MSC00001: Failed to start service
> jboss.deployment.unit."test.war".WeldService:
> org.jboss.msc.service.StartException in service
> jboss.deployment.unit."test.war".WeldService:
> org.jboss.weld.exceptions.DefinitionException: Exception List with 1
> exceptions:
> Exception 0 :
> org.jboss.weld.exceptions.DefinitionException: Exception List with 1
> exceptions:
> Exception 0 :
> java.lang.NullPointerException
> at
> org.jboss.solder.bean.generic.GenericBeanExtension.registerGenericBeanObserverMethod(GenericBeanExtension.java:378)
> at sun.reflect.GeneratedMethodAccessor39.invoke(Unknown Source)
> at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.lang.reflect.Method.invoke(Method.java:601)
> at
> org.jboss.weld.util.reflection.SecureReflections$13.work(SecureReflections.java:267)
> at
> org.jboss.weld.util.reflection.SecureReflectionAccess.run(SecureReflectionAccess.java:52)
> at
> org.jboss.weld.util.reflection.SecureReflectionAccess.runAsInvocation(SecureReflectionAccess.java:137)
> at
> org.jboss.weld.util.reflection.SecureReflections.invoke(SecureReflections.java:263)
> at
> org.jboss.weld.introspector.jlr.WeldMethodImpl.invokeOnInstance(WeldMethodImpl.java:170)
> at
> org.jboss.weld.introspector.ForwardingWeldMethod.invokeOnInstance(ForwardingWeldMethod.java:51)
> at
> org.jboss.weld.injection.MethodInjectionPoint.invokeOnInstanceWithSpecialValue(MethodInjectionPoint.java:154)
> at
> org.jboss.weld.event.ObserverMethodImpl.sendEvent(ObserverMethodImpl.java:245)
> at
> org.jboss.weld.event.ObserverMethodImpl.sendEvent(ObserverMethodImpl.java:233)
> at
> org.jboss.weld.event.ObserverMethodImpl.notify(ObserverMethodImpl.java:213)
> at
> org.jboss.weld.event.ObserverNotifier.notifyObserver(ObserverNotifier.java:117)
> at
> org.jboss.weld.event.TransactionalObserverNotifier.notifyObserver(TransactionalObserverNotifier.java:44)
> at
> org.jboss.weld.event.ObserverNotifier.notifyObservers(ObserverNotifier.java:85)
> at
> org.jboss.weld.event.ObserverNotifier.fireEvent(ObserverNotifier.java:75)
> at
> org.jboss.weld.bootstrap.events.AbstractContainerEvent.fire(AbstractContainerEvent.java:60)
> at
> org.jboss.weld.bootstrap.events.AbstractDefinitionContainerEvent.fire(AbstractDefinitionContainerEvent.java:38)
> at
> org.jboss.weld.bootstrap.events.ProcessObserverMethodImpl.fire(ProcessObserverMethodImpl.java:45)
> at
> org.jboss.weld.bootstrap.events.AfterBeanDiscoveryImpl.addObserverMethod(AfterBeanDiscoveryImpl.java:76)
> at
> org.richfaces.cdi.push.PushCDIExtension.afterBeanDiscovery(PushCDIExtension.java:99)
> 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.util.reflection.SecureReflections$13.work(SecureReflections.java:267)
> at
> org.jboss.weld.util.reflection.SecureReflectionAccess.run(SecureReflectionAccess.java:52)
> at
> org.jboss.weld.util.reflection.SecureReflectionAccess.runAsInvocation(SecureReflectionAccess.java:137)
> at
> org.jboss.weld.util.reflection.SecureReflections.invoke(SecureReflections.java:263)
> at
> org.jboss.weld.introspector.jlr.WeldMethodImpl.invokeOnInstance(WeldMethodImpl.java:170)
> at
> org.jboss.weld.introspector.ForwardingWeldMethod.invokeOnInstance(ForwardingWeldMethod.java:51)
> at
> org.jboss.weld.injection.MethodInjectionPoint.invokeOnInstanceWithSpecialValue(MethodInjectionPoint.java:154)
> at
> org.jboss.weld.event.ObserverMethodImpl.sendEvent(ObserverMethodImpl.java:245)
> at
> org.jboss.weld.event.ObserverMethodImpl.sendEvent(ObserverMethodImpl.java:233)
> at
> org.jboss.weld.event.ObserverMethodImpl.notify(ObserverMethodImpl.java:213)
> at
> org.jboss.weld.bootstrap.events.AbstractContainerEvent.fire(AbstractContainerEvent.java:75)
> at
> org.jboss.weld.bootstrap.events.AbstractDefinitionContainerEvent.fire(AbstractDefinitionContainerEvent.java:46)
> at
> org.jboss.weld.bootstrap.events.AfterBeanDiscoveryImpl.fire(AfterBeanDiscoveryImpl.java:42)
> at
> org.jboss.weld.bootstrap.WeldBootstrap.deployBeans(WeldBootstrap.java:360)
> at org.jboss.as.weld.WeldContainer.start(WeldContainer.java:82)
> at org.jboss.as.weld.services.WeldService.start(WeldService.java:76)
> at
> org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1811)
> at
> org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1746)
> at
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
> at java.lang.Thread.run(Thread.java:722)
> at
> org.jboss.weld.bootstrap.events.AbstractDefinitionContainerEvent.fire(AbstractDefinitionContainerEvent.java:40)
> at
> org.jboss.weld.bootstrap.events.ProcessObserverMethodImpl.fire(ProcessObserverMethodImpl.java:45)
> at
> org.jboss.weld.bootstrap.events.AfterBeanDiscoveryImpl.addObserverMethod(AfterBeanDiscoveryImpl.java:76)
> at
> org.richfaces.cdi.push.PushCDIExtension.afterBeanDiscovery(PushCDIExtension.java:99)
> 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.util.reflection.SecureReflections$13.work(SecureReflections.java:267)
> at
> org.jboss.weld.util.reflection.SecureReflectionAccess.run(SecureReflectionAccess.java:52)
> at
> org.jboss.weld.util.reflection.SecureReflectionAccess.runAsInvocation(SecureReflectionAccess.java:137)
> at
> org.jboss.weld.util.reflection.SecureReflections.invoke(SecureReflections.java:263)
> at
> org.jboss.weld.introspector.jlr.WeldMethodImpl.invokeOnInstance(WeldMethodImpl.java:170)
> at
> org.jboss.weld.introspector.ForwardingWeldMethod.invokeOnInstance(ForwardingWeldMethod.java:51)
> at
> org.jboss.weld.injection.MethodInjectionPoint.invokeOnInstanceWithSpecialValue(MethodInjectionPoint.java:154)
> at
> org.jboss.weld.event.ObserverMethodImpl.sendEvent(ObserverMethodImpl.java:245)
> at
> org.jboss.weld.event.ObserverMethodImpl.sendEvent(ObserverMethodImpl.java:233)
> at
> org.jboss.weld.event.ObserverMethodImpl.notify(ObserverMethodImpl.java:213)
> at
> org.jboss.weld.bootstrap.events.AbstractContainerEvent.fire(AbstractContainerEvent.java:75)
> at
> org.jboss.weld.bootstrap.events.AbstractDefinitionContainerEvent.fire(AbstractDefinitionContainerEvent.java:46)
> at
> org.jboss.weld.bootstrap.events.AfterBeanDiscoveryImpl.fire(AfterBeanDiscoveryImpl.java:42)
> at
> org.jboss.weld.bootstrap.WeldBootstrap.deployBeans(WeldBootstrap.java:360)
> at org.jboss.as.weld.WeldContainer.start(WeldContainer.java:82)
> at org.jboss.as.weld.services.WeldService.start(WeldService.java:76)
> at
> org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1811)
> at
> org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1746)
> at
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
> at java.lang.Thread.run(Thread.java:722)
--
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
_______________________________________________
seam-issues mailing list
[email protected]
https://lists.jboss.org/mailman/listinfo/seam-issues