Yes, please go ahead with a patch or a github fork. We'll have a
closer look at it.

On Sunday, September 19, 2010, Adrian Trenaman <[email protected]> wrote:
> Thanks Guillaume for the quick reply on a Sunday!
>
> OK. Can I suggest that I submit the patch as is, so that we can get it into 
> the code-base, and then we can look to fixing the issue? Many eyes may squash 
> this bug.
>
> Let me know if you're happy for me to submit the code.
>
> Best,
> Ade.
>
> On 19/09/2010 21:29, Guillaume Nodet wrote:
>
> Not sure what the exact problem is but it does look like a bug in the
> arie blueprint implementation.
>
> On Sunday, September 19, 2010, adrian.trenaman
> <[email protected]>  wrote:
>
>
> Hi there,
>
> Have been doing some work on my Karaf archive deployer, which is working
> nicely -except- when I shut down the Karaf instance: I see this nasty stack
> trace. I've stepped through right to the Felix code and it seems that after
> the unregister of my 'kar:' url handler service, the runtime tries to
> register it again (why?!) and then this fails because the bundle in question
> (org.apache.karaf.deployer.kar) is in a Stopping state - hence the
> 'IllegalStateException'.
>
> I'll keep banging my head against this, but I'm keen to know if anyone else
> out there has seen this or might have an idea of what I've done wrong. BTW,
> I've based all my deployer code on the existing code for the features and
> blueprints deployers.
>
> Thanks in advance,
> Ade.
>
> ---
>
> java.lang.IllegalStateException: Can only register services while bundle is
> active or activating
>          at org.apache.felix.framework.Felix.registerService(Felix.java:2817)
>          at
> org.apache.felix.framework.BundleContextImpl.registerService(BundleContextImpl.java:251)
>          at
> org.apache.aries.blueprint.container.BlueprintContainerImpl.registerService(BlueprintContainerImpl.java:388)
>          at
> org.apache.aries.blueprint.container.ServiceRecipe.register(ServiceRecipe.java:166)
>          at
> org.apache.aries.blueprint.container.BlueprintContainerImpl.notifySatisfaction(BlueprintContainerImpl.java:596)
>          at
> org.apache.aries.blueprint.container.AbstractServiceReferenceRecipe.setSatisfied(AbstractServiceReferenceRecipe.java:393)
>          at
> org.apache.aries.blueprint.container.AbstractServiceReferenceRecipe.serviceRemoved(AbstractServiceReferenceRecipe.java:385)
>          at
> org.apache.aries.blueprint.container.AbstractServiceReferenceRecipe.serviceChanged(AbstractServiceReferenceRecipe.java:355)
>          at
> org.apache.felix.framework.util.EventDispatcher.invokeServiceListenerCallback(EventDispatcher.java:864)
>          at
> org.apache.felix.framework.util.EventDispatcher.fireEventImmediately(EventDispatcher.java:732)
>          at
> org.apache.felix.framework.util.EventDispatcher.fireServiceEvent(EventDispatcher.java:662)
>          at org.apache.felix.framework.Felix.fireServiceEvent(Felix.java:3726)
>          at org.apache.felix.framework.Felix.access$000(Felix.java:80)
>          at org.apache.felix.framework.Felix$2.serviceChanged(Felix.java:717)
>          at
> org.apache.felix.framework.ServiceRegistry.unregisterService(ServiceRegistry.java:135)
>          at
> org.apache.felix.framework.ServiceRegistrationImpl.unregister(ServiceRegistrationImpl.java:129)
>          at
> org.apache.aries.blueprint.container.ServiceRecipe.unregister(ServiceRecipe.java:183)
>          at
> org.apache.aries.blueprint.container.BlueprintContainerImpl.unregisterServices(BlueprintContainerImpl.java:657)
>          at
> org.apache.aries.blueprint.container.BlueprintContainerImpl.destroy(BlueprintContainerImpl.java:806)
>          at
> org.apache.aries.blueprint.container.BlueprintExtender.destroyContext(BlueprintExtender.java:204)
>          at
> org.apache.aries.blueprint.container.BlueprintExtender.bundleChanged(BlueprintExtender.java:196)
>          at
> org.apache.aries.blueprint.container.BlueprintExtender$BlueprintBundleTrackerCustomizer.modifiedBundle(BlueprintExtender.java:385)
>          at
> org.osgi.util.tracker.BundleTracker$Tracked.customizerModified(BundleTracker.java:453)
>          at 
> org.osgi.util.tracker.AbstractTracked.track(AbstractTracked.java:237)
>          at
> org.osgi.util.tracker.BundleTracker$Tracked.bundleChanged(BundleTracker.java:413)
>          at
> org.apache.felix.framework.util.EventDispatcher.invokeBundleListenerCallback(EventDispatcher.java:800)
>          at
> org.apache.felix.framework.util.EventDispatcher.fireEventImmediately(EventDispatcher.java:728)
>          at
> org.apache.felix.framework.util.EventDispatcher.fireBundleEvent(Ev

-- 
Cheers,
Guillaume Nodet
------------------------
Blog: http://gnodet.blogspot.com/
------------------------
Open Source SOA
http://fusesource.com

Reply via email to