[jira] [Updated] (FELIX-3288) NPE when component exposed as a service with servicefactory = true

2012-01-24 Thread Jarek Gawor (Updated) (JIRA)

 [ 
https://issues.apache.org/jira/browse/FELIX-3288?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jarek Gawor updated FELIX-3288:
---

Attachment: FELIX-3288.patch

Small patch for this issue.


> NPE when component exposed as a service with servicefactory = true
> --
>
> Key: FELIX-3288
> URL: https://issues.apache.org/jira/browse/FELIX-3288
> Project: Felix
>  Issue Type: Bug
>  Components: Declarative Services (SCR)
>Affects Versions:  scr-1.6.0
>Reporter: Jarek Gawor
> Attachments: FELIX-3288.patch
>
>
> I have a component that is exposed as a service and is also configured with 
> servicefactory = true. I see the following NPE when shutting the framework:
> java.lang.NullPointerException
>   at 
> org.apache.felix.scr.impl.manager.ImmediateComponentManager.disposeImplementationObject(ImmediateComponentManager.java:252)
>   at 
> org.apache.felix.scr.impl.manager.ImmediateComponentManager.deleteComponent(ImmediateComponentManager.java:135)
>   at 
> org.apache.felix.scr.impl.manager.AbstractComponentManager$Satisfied.deactivate(AbstractComponentManager.java:1075)
>   at 
> org.apache.felix.scr.impl.manager.AbstractComponentManager.disposeInternal(AbstractComponentManager.java:357)
>   at 
> org.apache.felix.scr.impl.manager.AbstractComponentManager.dispose(AbstractComponentManager.java:196)
>   at 
> org.apache.felix.scr.impl.config.ConfiguredComponentHolder.disposeComponents(ConfiguredComponentHolder.java:299)
>   at 
> org.apache.felix.scr.impl.BundleComponentActivator.dispose(BundleComponentActivator.java:319)
>   at 
> org.apache.felix.scr.impl.Activator.disposeComponents(Activator.java:340)
>   at org.apache.felix.scr.impl.Activator.bundleChanged(Activator.java:207)
> Since the component is configured with servicefactory = true, 
> ServiceFactoryComponentManager is used to manage the object. 
> ServiceFactoryComponentManager overrides the createComponent() method from 
> ImmediateComponentManager. ServiceFactoryComponentManager also intended (I 
> think) to override the corresponding deleteComponent() method from 
> ImmediateComponentManager. However, the signature of the deleteComponent() in 
> ImmediateComponentManager has changed a bit so the override doesn't work 
> anymore. So that's what I think is causing the problem in this case.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira




[jira] [Updated] (FELIX-3288) NPE when component exposed as a service with servicefactory = true

2011-12-20 Thread Jarek Gawor (Updated) (JIRA)

 [ 
https://issues.apache.org/jira/browse/FELIX-3288?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jarek Gawor updated FELIX-3288:
---

Affects Version/s: (was: scr-1.0.2)
scr-1.6.0

> NPE when component exposed as a service with servicefactory = true
> --
>
> Key: FELIX-3288
> URL: https://issues.apache.org/jira/browse/FELIX-3288
> Project: Felix
>  Issue Type: Bug
>  Components: Declarative Services (SCR)
>Affects Versions:  scr-1.6.0
>Reporter: Jarek Gawor
>
> I have a component that is exposed as a service and is also configured with 
> servicefactory = true. I see the following NPE when shutting the framework:
> java.lang.NullPointerException
>   at 
> org.apache.felix.scr.impl.manager.ImmediateComponentManager.disposeImplementationObject(ImmediateComponentManager.java:252)
>   at 
> org.apache.felix.scr.impl.manager.ImmediateComponentManager.deleteComponent(ImmediateComponentManager.java:135)
>   at 
> org.apache.felix.scr.impl.manager.AbstractComponentManager$Satisfied.deactivate(AbstractComponentManager.java:1075)
>   at 
> org.apache.felix.scr.impl.manager.AbstractComponentManager.disposeInternal(AbstractComponentManager.java:357)
>   at 
> org.apache.felix.scr.impl.manager.AbstractComponentManager.dispose(AbstractComponentManager.java:196)
>   at 
> org.apache.felix.scr.impl.config.ConfiguredComponentHolder.disposeComponents(ConfiguredComponentHolder.java:299)
>   at 
> org.apache.felix.scr.impl.BundleComponentActivator.dispose(BundleComponentActivator.java:319)
>   at 
> org.apache.felix.scr.impl.Activator.disposeComponents(Activator.java:340)
>   at org.apache.felix.scr.impl.Activator.bundleChanged(Activator.java:207)
> Since the component is configured with servicefactory = true, 
> ServiceFactoryComponentManager is used to manage the object. 
> ServiceFactoryComponentManager overrides the createComponent() method from 
> ImmediateComponentManager. ServiceFactoryComponentManager also intended (I 
> think) to override the corresponding deleteComponent() method from 
> ImmediateComponentManager. However, the signature of the deleteComponent() in 
> ImmediateComponentManager has changed a bit so the override doesn't work 
> anymore. So that's what I think is causing the problem in this case.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira