Josh Smith created CAMEL-15760:
----------------------------------

             Summary: 
org.osgi.service.blueprint.container.NoSuchComponentException: No component 
with id 'blueprintBundle' could be found
                 Key: CAMEL-15760
                 URL: https://issues.apache.org/jira/browse/CAMEL-15760
             Project: Camel
          Issue Type: Bug
          Components: camel-blueprint
    Affects Versions: 3.4.4
            Reporter: Josh Smith
            Assignee: Grzegorz Grzybek


h3. Description:

Whenever refreshing a bundle that creates a camel context via blueprint, the 
warning below appears in the logs:

 
{code:java}
16:11:44.779 WARN [Blueprint Event Dispatcher: 1] Error occurred while stopping 
lifecycle strategies. This exception will be ignored.
org.osgi.service.blueprint.container.NoSuchComponentException: No component 
with id 'blueprintBundle' could be found
 at 
org.apache.aries.blueprint.container.BlueprintContainerImpl.getComponentInstance(BlueprintContainerImpl.java:805)
 ~[?:?]
 at 
org.apache.camel.blueprint.BlueprintContainerBeanRepository.lookupByType(BlueprintContainerBeanRepository.java:104)
 ~[?:?]
 at 
org.apache.camel.blueprint.BlueprintContainerBeanRepository.lookupByType(BlueprintContainerBeanRepository.java:100)
 ~[?:?]
 at 
org.apache.camel.blueprint.BlueprintContainerBeanRepository.findByType(BlueprintContainerBeanRepository.java:94)
 ~[?:?]
 at 
org.apache.camel.support.DefaultRegistry.findByType(DefaultRegistry.java:203) 
~[!/:3.4.4]
 at 
org.apache.camel.impl.engine.OnCamelContextLifecycleStrategy.onContextStop(OnCamelContextLifecycleStrategy.java:60)
 ~[!/:3.4.4]
 at 
org.apache.camel.impl.engine.AbstractCamelContext.doStop(AbstractCamelContext.java:2910)
 [!/:3.4.4]
 at org.apache.camel.support.service.BaseService.stop(BaseService.java:155) 
[!/:3.4.4]
 at 
org.apache.camel.blueprint.BlueprintCamelContext.blueprintEvent(BlueprintCamelContext.java:194)
 [!/:3.4.4]
 at 
org.apache.aries.blueprint.container.BlueprintEventDispatcher$3.call(BlueprintEventDispatcher.java:190)
 [!/:1.10.2]
 at 
org.apache.aries.blueprint.container.BlueprintEventDispatcher$3.call(BlueprintEventDispatcher.java:188)
 [!/:1.10.2]
 at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:1.8.0_242]
 at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) 
[?:1.8.0_242]
 at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:1.8.0_242]
 at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) 
[?:1.8.0_242]
 at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:1.8.0_242]
 at 
java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180)
 [?:1.8.0_242]
 at 
java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293)
 [?:1.8.0_242]
 at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) 
[?:1.8.0_242]
 at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) 
[?:1.8.0_242]
 at java.lang.Thread.run(Thread.java:748) [?:1.8.0_242]{code}
 

It appears that the Blueprint container is being destroyed before the camel 
context, but the camel context tries to access the bundle when stopping. And 
since the blueprint container is already destroyed, that fails.

Reverting this change fixes the warnings: 
https://issues.apache.org/jira/browse/CAMEL-14332

Note: Everything appears to work fine when the bundle is started. Still, the 
warnings are concerning
h3. To reproduce:
 # Create a bundle with this blueprint.xml

{code:java}
<?xml version="1.0" encoding="UTF-8"?>
<blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0";>
  <camelContext xmlns="http://camel.apache.org/schema/blueprint"; 
id="camelContext"/>
</blueprint>
{code}

 # Install in Karaf
 # Refresh the bundle



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to