You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@felix.apache.org by "Heiko Seeberger (JIRA)" <ji...@apache.org> on 2009/01/02 09:35:44 UTC
[jira] Created: (FELIX-869) SCR throws exception on invalidating a
component with a reference to a service that was already unregistered
SCR throws exception on invalidating a component with a reference to a service that was already unregistered
------------------------------------------------------------------------------------------------------------
Key: FELIX-869
URL: https://issues.apache.org/jira/browse/FELIX-869
Project: Felix
Issue Type: Bug
Components: Declarative Services (SCR)
Affects Versions: scr-1.0.6
Environment: Felix 1.4.1, SCR 1.0.6
Reporter: Heiko Seeberger
Simple scenario: A component references (statically, 1:1, look-up strategy) a service. When the bundle providing that service is stopped and hence the reference no longer satisfied, stopping the bundle providing the component will result in the below exception.
I checked with Equinox 3.4.1 and there everything is working fine.
ERROR: net.eclipsetraining.backoffice.tplan.app.swing (9): [net.eclipsetraining.backoffice.tplan.ui.swing.internal.Component] BundleComponentActivator : Exception invalidating
java.lang.IllegalStateException: The service registration is no longer valid.
at org.apache.felix.framework.ServiceRegistrationImpl.getReference(ServiceRegistrationImpl.java:88)
at org.apache.felix.framework.ServiceReferenceImpl.hashCode(ServiceReferenceImpl.java:87)
at java.util.HashMap.removeEntryForKey(HashMap.java:548)
at java.util.HashMap.remove(HashMap.java:538)
at java.util.Collections$SynchronizedMap.remove(Collections.java:1982)
at org.apache.felix.scr.impl.DependencyManager.ungetService(DependencyManager.java:578)
at org.apache.felix.scr.impl.DependencyManager.close(DependencyManager.java:374)
at org.apache.felix.scr.impl.AbstractComponentManager.disableInternal(AbstractComponentManager.java:589)
at org.apache.felix.scr.impl.AbstractComponentManager.disposeInternal(AbstractComponentManager.java:616)
at org.apache.felix.scr.impl.AbstractComponentManager.dispose(AbstractComponentManager.java:272)
at org.apache.felix.scr.impl.ImmediateComponentManager.dispose(ImmediateComponentManager.java:120)
at org.apache.felix.scr.impl.BundleComponentActivator.dispose(BundleComponentActivator.java:258)
at org.apache.felix.scr.impl.Activator.disposeComponents(Activator.java:264)
at org.apache.felix.scr.impl.Activator.bundleChanged(Activator.java:177)
at org.apache.felix.framework.util.EventDispatcher.invokeBundleListenerCallback(EventDispatcher.java:745)
at org.apache.felix.framework.util.EventDispatcher.fireEventImmediately(EventDispatcher.java:674)
at org.apache.felix.framework.util.EventDispatcher.fireBundleEvent(EventDispatcher.java:587)
at org.apache.felix.framework.Felix.fireBundleEvent(Felix.java:3629)
at org.apache.felix.framework.Felix._stopBundle(Felix.java:2076)
at org.apache.felix.framework.Felix.stopBundle(Felix.java:2034)
at org.apache.felix.framework.BundleImpl.stop(BundleImpl.java:418)
at org.apache.felix.framework.BundleImpl.stop(BundleImpl.java:405)
at org.apache.felix.shell.impl.StopCommandImpl.execute(StopCommandImpl.java:70)
at org.apache.felix.shell.impl.Activator$ShellServiceImpl.executeCommand(Activator.java:276)
at org.apache.felix.shell.tui.Activator$ShellTuiRunnable.run(Activator.java:167)
at java.lang.Thread.run(Thread.java:637)
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Updated: (FELIX-869) SCR throws exception on invalidating a
component with a reference to a service that was already unregistered
Posted by "Felix Meschberger (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/FELIX-869?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Felix Meschberger updated FELIX-869:
------------------------------------
Component/s: (was: Declarative Services (SCR))
Framework
Affects Version/s: (was: scr-1.0.6)
felix-1.4.0
felix-1.4.1
Fix Version/s: felix-1.6.0
Reassign this issue to the framework component and mark it as happening with 1.4.0 and 1.4.1. Earlier versions are not succeptible to this issue, since these did not throw the IllegalStateException.
> SCR throws exception on invalidating a component with a reference to a service that was already unregistered
> ------------------------------------------------------------------------------------------------------------
>
> Key: FELIX-869
> URL: https://issues.apache.org/jira/browse/FELIX-869
> Project: Felix
> Issue Type: Bug
> Components: Framework
> Affects Versions: felix-1.4.0, felix-1.4.1
> Environment: Felix 1.4.1, SCR 1.0.6
> Reporter: Heiko Seeberger
> Fix For: felix-1.6.0
>
>
> Simple scenario: A component references (statically, 1:1, look-up strategy) a service. When the bundle providing that service is stopped and hence the reference no longer satisfied, stopping the bundle providing the component will result in the below exception.
> I checked with Equinox 3.4.1 and there everything is working fine.
> ERROR: net.eclipsetraining.backoffice.tplan.app.swing (9): [net.eclipsetraining.backoffice.tplan.ui.swing.internal.Component] BundleComponentActivator : Exception invalidating
> java.lang.IllegalStateException: The service registration is no longer valid.
> at org.apache.felix.framework.ServiceRegistrationImpl.getReference(ServiceRegistrationImpl.java:88)
> at org.apache.felix.framework.ServiceReferenceImpl.hashCode(ServiceReferenceImpl.java:87)
> at java.util.HashMap.removeEntryForKey(HashMap.java:548)
> at java.util.HashMap.remove(HashMap.java:538)
> at java.util.Collections$SynchronizedMap.remove(Collections.java:1982)
> at org.apache.felix.scr.impl.DependencyManager.ungetService(DependencyManager.java:578)
> at org.apache.felix.scr.impl.DependencyManager.close(DependencyManager.java:374)
> at org.apache.felix.scr.impl.AbstractComponentManager.disableInternal(AbstractComponentManager.java:589)
> at org.apache.felix.scr.impl.AbstractComponentManager.disposeInternal(AbstractComponentManager.java:616)
> at org.apache.felix.scr.impl.AbstractComponentManager.dispose(AbstractComponentManager.java:272)
> at org.apache.felix.scr.impl.ImmediateComponentManager.dispose(ImmediateComponentManager.java:120)
> at org.apache.felix.scr.impl.BundleComponentActivator.dispose(BundleComponentActivator.java:258)
> at org.apache.felix.scr.impl.Activator.disposeComponents(Activator.java:264)
> at org.apache.felix.scr.impl.Activator.bundleChanged(Activator.java:177)
> at org.apache.felix.framework.util.EventDispatcher.invokeBundleListenerCallback(EventDispatcher.java:745)
> at org.apache.felix.framework.util.EventDispatcher.fireEventImmediately(EventDispatcher.java:674)
> at org.apache.felix.framework.util.EventDispatcher.fireBundleEvent(EventDispatcher.java:587)
> at org.apache.felix.framework.Felix.fireBundleEvent(Felix.java:3629)
> at org.apache.felix.framework.Felix._stopBundle(Felix.java:2076)
> at org.apache.felix.framework.Felix.stopBundle(Felix.java:2034)
> at org.apache.felix.framework.BundleImpl.stop(BundleImpl.java:418)
> at org.apache.felix.framework.BundleImpl.stop(BundleImpl.java:405)
> at org.apache.felix.shell.impl.StopCommandImpl.execute(StopCommandImpl.java:70)
> at org.apache.felix.shell.impl.Activator$ShellServiceImpl.executeCommand(Activator.java:276)
> at org.apache.felix.shell.tui.Activator$ShellTuiRunnable.run(Activator.java:167)
> at java.lang.Thread.run(Thread.java:637)
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Closed: (FELIX-869) SCR throws exception on invalidating a
component with a reference to a service that was already unregistered
Posted by "Felix Meschberger (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/FELIX-869?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Felix Meschberger closed FELIX-869.
-----------------------------------
Resolution: Duplicate
Assignee: Felix Meschberger
Closing this since it is a duplicate.
> SCR throws exception on invalidating a component with a reference to a service that was already unregistered
> ------------------------------------------------------------------------------------------------------------
>
> Key: FELIX-869
> URL: https://issues.apache.org/jira/browse/FELIX-869
> Project: Felix
> Issue Type: Bug
> Components: Framework
> Affects Versions: felix-1.4.0, felix-1.4.1
> Environment: Felix 1.4.1, SCR 1.0.6
> Reporter: Heiko Seeberger
> Assignee: Felix Meschberger
> Fix For: felix-1.6.0
>
>
> Simple scenario: A component references (statically, 1:1, look-up strategy) a service. When the bundle providing that service is stopped and hence the reference no longer satisfied, stopping the bundle providing the component will result in the below exception.
> I checked with Equinox 3.4.1 and there everything is working fine.
> ERROR: net.eclipsetraining.backoffice.tplan.app.swing (9): [net.eclipsetraining.backoffice.tplan.ui.swing.internal.Component] BundleComponentActivator : Exception invalidating
> java.lang.IllegalStateException: The service registration is no longer valid.
> at org.apache.felix.framework.ServiceRegistrationImpl.getReference(ServiceRegistrationImpl.java:88)
> at org.apache.felix.framework.ServiceReferenceImpl.hashCode(ServiceReferenceImpl.java:87)
> at java.util.HashMap.removeEntryForKey(HashMap.java:548)
> at java.util.HashMap.remove(HashMap.java:538)
> at java.util.Collections$SynchronizedMap.remove(Collections.java:1982)
> at org.apache.felix.scr.impl.DependencyManager.ungetService(DependencyManager.java:578)
> at org.apache.felix.scr.impl.DependencyManager.close(DependencyManager.java:374)
> at org.apache.felix.scr.impl.AbstractComponentManager.disableInternal(AbstractComponentManager.java:589)
> at org.apache.felix.scr.impl.AbstractComponentManager.disposeInternal(AbstractComponentManager.java:616)
> at org.apache.felix.scr.impl.AbstractComponentManager.dispose(AbstractComponentManager.java:272)
> at org.apache.felix.scr.impl.ImmediateComponentManager.dispose(ImmediateComponentManager.java:120)
> at org.apache.felix.scr.impl.BundleComponentActivator.dispose(BundleComponentActivator.java:258)
> at org.apache.felix.scr.impl.Activator.disposeComponents(Activator.java:264)
> at org.apache.felix.scr.impl.Activator.bundleChanged(Activator.java:177)
> at org.apache.felix.framework.util.EventDispatcher.invokeBundleListenerCallback(EventDispatcher.java:745)
> at org.apache.felix.framework.util.EventDispatcher.fireEventImmediately(EventDispatcher.java:674)
> at org.apache.felix.framework.util.EventDispatcher.fireBundleEvent(EventDispatcher.java:587)
> at org.apache.felix.framework.Felix.fireBundleEvent(Felix.java:3629)
> at org.apache.felix.framework.Felix._stopBundle(Felix.java:2076)
> at org.apache.felix.framework.Felix.stopBundle(Felix.java:2034)
> at org.apache.felix.framework.BundleImpl.stop(BundleImpl.java:418)
> at org.apache.felix.framework.BundleImpl.stop(BundleImpl.java:405)
> at org.apache.felix.shell.impl.StopCommandImpl.execute(StopCommandImpl.java:70)
> at org.apache.felix.shell.impl.Activator$ShellServiceImpl.executeCommand(Activator.java:276)
> at org.apache.felix.shell.tui.Activator$ShellTuiRunnable.run(Activator.java:167)
> at java.lang.Thread.run(Thread.java:637)
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.