felix-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Richard S. Hall (JIRA)" <j...@apache.org>
Subject [jira] Resolved: (FELIX-952) Exception thrown when unregistering services because the bundle is stopped
Date Fri, 20 Feb 2009 16:39:02 GMT

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

Richard S. Hall resolved FELIX-952.

       Resolution: Fixed
    Fix Version/s: felix-1.6.0
         Assignee: Richard S. Hall

I modified ServiceRegistry.unregisterServices() to check to see if the registration is valid
before calling unregister(), so I think this should solve your issue. Please close this issue
if you are satisfied.

> Exception thrown when unregistering services because the bundle is stopped
> --------------------------------------------------------------------------
>                 Key: FELIX-952
>                 URL: https://issues.apache.org/jira/browse/FELIX-952
>             Project: Felix
>          Issue Type: Bug
>          Components: Framework
>            Reporter: Guillaume Nodet
>            Assignee: Richard S. Hall
>             Fix For: felix-1.6.0
> I have a bundle which happens to unregister some services from a ServiceListener.
> What happens is that when the bundle is stopped, ServiceRegistry#unregisterServices(Bundle)
is called.
> This method unregister services one by one.   When one service has been unregistered,
my listener is called which unregister another service.
> When the loop iterator to this very service, an exception is thrown.
> {code}
> Caused by: java.lang.IllegalStateException: Service already unregistered.
>         at org.apache.felix.framework.ServiceRegistrationImpl.unregister(ServiceRegistrationImpl.java:108)
>         at org.apache.felix.framework.ServiceRegistry.unregisterServices(ServiceRegistry.java:135)
>         at org.apache.felix.framework.Felix._stopBundle(Felix.java:2032)
>         at org.apache.felix.framework.Felix.stopBundle(Felix.java:1952)
>         at org.apache.felix.framework.Felix._uninstallBundle(Felix.java:2106)
>         at org.apache.felix.framework.Felix.uninstallBundle(Felix.java:2076)
>         at org.apache.felix.framework.BundleImpl.uninstall(BundleImpl.java:425)
> {code}

This message is automatically generated by JIRA.
You can reply to this email to add a comment to the issue online.

View raw message