Bundles are in state Waiting after restart of service bundle in Fabric

Solution Verified - Updated -

Issue

  • Assume the following constellation: We have a blueprint bundle A that exports a JMS connectin factory in the OSGi service registry which is in turned used by bundles B and C to listen to specific queues via Camel's JMS component:

  • Bundle A:

<service ref="pooledConnectionFactory" interface="javax.jms.ConnectionFactory">
        <service-properties>
            <entry key="broker" value="smw"></entry>
        </service-properties>
    </service>

  • Bundles B & C:

    <reference id="mqConnectionFactory" interface="javax.jms.ConnectionFactory" filter="(broker=smw)"></reference>
    ...
    <bean id="activemq" class="org.apache.activemq.camel.component.ActiveMQComponent">
        <property name="acceptMessagesWhileStopping" value="true"></property>
        <property name="cacheLevelName" value="CACHE_NONE"></property>
        <property name="connectionFactory" ref="mqConnectionFactory"></property>
        <property name="maxMessagesPerTask" value="10"></property>
    </bean>
    
  • After a restart of bundle A e.g. by changing its configuration, the bundles B and C are forever in state Waiting. What's wrong?

Environment

  • Red Hat JBoss Fuse
    • 6.x
  • Aries Blueprint
  • Fabric

Subscriber exclusive content

A Red Hat subscription provides unlimited access to our knowledgebase of over 48,000 articles and solutions.

Current Customers and Partners

Log in for full access

Log In
Close

Welcome! Check out the Getting Started with Red Hat page for quick tours and guides for common tasks.