felix-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Felix Meschberger (Commented) (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (FELIX-3288) NPE when component exposed as a service with servicefactory = true
Date Tue, 20 Dec 2011 21:47:31 GMT

    [ https://issues.apache.org/jira/browse/FELIX-3288?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13173532#comment-13173532

Felix Meschberger commented on FELIX-3288:

You might want to update the SCR bundle to the latest release (1.6.0 at this time). This contains
lots of fixes since the virtually age-old 1.0.2 release.
> 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.0.2
>            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


View raw message