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

Pierre Bourret commented on FELIX-4138:
---------------------------------------

Stack trace:
ERROR: Bundle org.apache.felix.ipojo [13] EventDispatcher: Error during 
dispatch. (java.lang.NullPointerException)
java.lang.NullPointerException
        at 
org.apache.felix.ipojo.IPojoFactory.removeFactoryStateListener(IPojoFactory.java:518)
        at 
org.apache.felix.ipojo.extender.internal.linker.ManagedType$ExtensionSupport.removedService(ManagedType.java:241)
        at 
org.osgi.util.tracker.ServiceTracker$Tracked.customizerRemoved(ServiceTracker.java:956)
        at 
org.osgi.util.tracker.ServiceTracker$Tracked.customizerRemoved(ServiceTracker.java:864)
        at 
org.osgi.util.tracker.AbstractTracked.untrack(AbstractTracked.java:341)
        at org.osgi.util.tracker.ServiceTracker.close(ServiceTracker.java:375)
        at 
org.apache.felix.ipojo.extender.internal.linker.ManagedType.stop(ManagedType.java:167)
        at 
org.apache.felix.ipojo.extender.internal.linker.DeclarationLinker.removedService(DeclarationLinker.java:107)
        at 
org.osgi.util.tracker.ServiceTracker$Tracked.customizerRemoved(ServiceTracker.java:956)
        at 
org.osgi.util.tracker.ServiceTracker$Tracked.customizerRemoved(ServiceTracker.java:864)
        at 
org.osgi.util.tracker.AbstractTracked.untrack(AbstractTracked.java:341)
        at 
org.osgi.util.tracker.ServiceTracker$Tracked.serviceChanged(ServiceTracker.java:902)
        at 
org.apache.felix.framework.util.EventDispatcher.invokeServiceListenerCallback(EventDispatcher.java:932)
        at 
org.apache.felix.framework.util.EventDispatcher.fireEventImmediately(EventDispatcher.java:793)
        at 
org.apache.felix.framework.util.EventDispatcher.fireServiceEvent(EventDispatcher.java:543)
        at org.apache.felix.framework.Felix.fireServiceEvent(Felix.java:4401)
        at org.apache.felix.framework.Felix.access$000(Felix.java:74)
        at org.apache.felix.framework.Felix$1.serviceChanged(Felix.java:390)
        at 
org.apache.felix.framework.ServiceRegistry.unregisterService(ServiceRegistry.java:151)
        at 
org.apache.felix.framework.ServiceRegistrationImpl.unregister(ServiceRegistrationImpl.java:127)
        at 
org.apache.felix.ipojo.extender.internal.AbstractService.stop(AbstractService.java:73)
        at 
org.apache.felix.ipojo.extender.internal.processor.ComponentsBundleProcessor$ComponentsAndInstances.stop(ComponentsBundleProcessor.java:223)
        at 
org.apache.felix.ipojo.extender.internal.processor.ComponentsBundleProcessor.deactivate(ComponentsBundleProcessor.java:112)
        at 
org.apache.felix.ipojo.extender.internal.processor.ChainedBundleProcessor.deactivate(ChainedBundleProcessor.java:100)
        at 
org.apache.felix.ipojo.extender.internal.Extender$1.removedBundle(Extender.java:173)
        at 
org.osgi.util.tracker.BundleTracker$Tracked.customizerRemoved(BundleTracker.java:491)
        at 
org.osgi.util.tracker.BundleTracker$Tracked.customizerRemoved(BundleTracker.java:414)
        at 
org.osgi.util.tracker.AbstractTracked.untrack(AbstractTracked.java:341)
        at 
org.osgi.util.tracker.BundleTracker$Tracked.bundleChanged(BundleTracker.java:449)
        at 
org.apache.felix.framework.util.EventDispatcher.invokeBundleListenerCallback(EventDispatcher.java:868)
        at 
org.apache.felix.framework.util.EventDispatcher.fireEventImmediately(EventDispatcher.java:789)
        at 
org.apache.felix.framework.util.EventDispatcher.fireBundleEvent(EventDispatcher.java:514)
        at org.apache.felix.framework.Felix.fireBundleEvent(Felix.java:4385)
        at org.apache.felix.framework.Felix.stopBundle(Felix.java:2508)
        at org.apache.felix.framework.Felix.setActiveStartLevel(Felix.java:1297)
        at 
org.apache.felix.framework.FrameworkStartLevelImpl.run(FrameworkStartLevelImpl.java:304)
        at java.lang.Thread.run(Thread.java:679)
                
> TypeDeclaration calls factory.dispose() even if it already has been disposed 
> (externally)
> -----------------------------------------------------------------------------------------
>
>                 Key: FELIX-4138
>                 URL: https://issues.apache.org/jira/browse/FELIX-4138
>             Project: Felix
>          Issue Type: Bug
>          Components: iPOJO
>    Affects Versions: ipojo-runtime-1.10
>            Reporter: Pierre Bourret
>
> In some tests, I manually destroy an iPOJO factory by calling 
> IPojoFactory.dispose()
> However, on framweork shutdown, the associated type declaration tries to call 
> the same method again, without checking the factory actual state. It may also 
> be possible that the TypeDeclaration is not unbound despite the fact the 
> factory is not active anymore.

--
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