Fuse ESB fails when installing custom features

Solution Unverified - Updated -

Issue

If we install our custom feature, we receive a NoClassDefFoundError:

karaf@root> addurl mvn:fusesource.my-feature/features/4.0.2-SNAPSHOT/xml/features
karaf@root> features:install my-feature
Refreshing bundles org.springframework.context.support (74), org.apache.activemq.activemq-pool (52), org.springframework.transaction (92)
ERROR: Bundle org.springframework.osgi.extender [84] Error stopping bundle. (java.lang.NoClassDefFoundError: org/osgi/framework/ServiceRegis
tration)
java.lang.NoClassDefFoundError: org/osgi/framework/ServiceRegistration
        at org.springframework.osgi.util.OsgiServiceUtils.unregisterService(OsgiServiceUtils.java:41)
        at org.springframework.osgi.extender.internal.support.NamespaceManager.unregisterResolverService(NamespaceManager.java:195)
        at org.springframework.osgi.extender.internal.support.NamespaceManager.destroy(NamespaceManager.java:223)
        at org.springframework.osgi.extender.internal.activator.ContextLoaderListener.shutdown(ContextLoaderListener.java:547)
        at org.springframework.osgi.extender.internal.activator.ContextLoaderListener.stop(ContextLoaderListener.java:431)
        at org.apache.felix.framework.util.SecureAction.stopActivator(SecureAction.java:651)
        at org.apache.felix.framework.Felix.stopBundle(Felix.java:2236)
        at org.apache.felix.framework.Felix$RefreshHelper.stop(Felix.java:4660)
        at org.apache.felix.framework.Felix.refreshPackages(Felix.java:3601)
        at org.apache.felix.framework.PackageAdminImpl.run(PackageAdminImpl.java:365)
        at java.lang.Thread.run(Thread.java:662)
Caused by: java.lang.ClassNotFoundException: org.osgi.framework.ServiceRegistration not found by org.springframework.osgi.core [81]
        at org.apache.felix.framework.ModuleImpl.findClassOrResourceByDelegation(ModuleImpl.java:845)
        at org.apache.felix.framework.ModuleImpl.access$400(ModuleImpl.java:74)
        at org.apache.felix.framework.ModuleImpl$ModuleClassLoader.loadClass(ModuleImpl.java:1839)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
        ... 11 more
ERROR: Bundle org.apache.servicemix.jbi.deployer [149] EventDispatcher: Error during dispatch. (java.lang.LinkageError: loader constraint vi
olation: loader (instance of org/apache/felix/framework/ModuleImpl$ModuleClassLoaderJava5) previously initiated loading for a different type
 with name "org/apache/servicemix/executors/Executor")
java.lang.LinkageError: loader constraint violation: loader (instance of org/apache/felix/framework/ModuleImpl$ModuleClassLoaderJava5) previ
ously initiated loading for a different type with name "org/apache/servicemix/executors/Executor"
        at org.apache.servicemix.wsn.component.WSNComponent$WSNEndpointManager.unregister(WSNComponent.java:291)
        at org.apache.servicemix.wsn.AbstractEndpoint.unregister(AbstractEndpoint.java:52)
        at org.apache.servicemix.wsn.AbstractPublisher.destroy(AbstractPublisher.java:81)
        at org.apache.servicemix.wsn.jms.JmsPublisher.destroy(JmsPublisher.java:149)
        at org.apache.servicemix.wsn.AbstractNotificationBroker.destroy(AbstractNotificationBroker.java:104)
        at org.apache.servicemix.wsn.jms.JmsNotificationBroker.destroy(JmsNotificationBroker.java:58)
        at org.apache.servicemix.wsn.component.WSNComponent.doShutDown(WSNComponent.java:191)
        at org.apache.servicemix.common.AsyncBaseLifeCycle.shutDown(AsyncBaseLifeCycle.java:259)
        at org.apache.servicemix.jbi.deployer.artifacts.ComponentImpl$ComponentWrapper.shutDown(ComponentImpl.java:277)
        at org.apache.servicemix.jbi.deployer.artifacts.ComponentImpl.shutDown(ComponentImpl.java:182)
        at org.apache.servicemix.jbi.deployer.impl.Deployer.unregisterComponent(Deployer.java:452)
        at org.apache.servicemix.jbi.deployer.impl.Deployer.unregisterDeployedComponent(Deployer.java:676)
        at org.apache.servicemix.jbi.deployer.impl.Deployer$1.removedService(Deployer.java:223)
        at org.osgi.util.tracker.ServiceTracker$Tracked.customizerRemoved(ServiceTracker.java:922)
        at org.osgi.util.tracker.AbstractTracked.untrack(AbstractTracked.java:351)
        at org.osgi.util.tracker.ServiceTracker$Tracked.serviceChanged(ServiceTracker.java:865)
        at org.apache.felix.framework.util.EventDispatcher.invokeServiceListenerCallback(EventDispatcher.java:859)
        at org.apache.felix.framework.util.EventDispatcher.fireEventImmediately(EventDispatcher.java:721)
        at org.apache.felix.framework.util.EventDispatcher.fireServiceEvent(EventDispatcher.java:649)
        at org.apache.felix.framework.Felix.fireServiceEvent(Felix.java:3792)
        at org.apache.felix.framework.Felix.access$000(Felix.java:89)
        at org.apache.felix.framework.Felix$2.serviceChanged(Felix.java:734)
        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:201)
        at org.apache.aries.blueprint.container.BlueprintContainerImpl.notifySatisfaction(BlueprintContainerImpl.java:615)
        at org.apache.aries.blueprint.container.AbstractServiceReferenceRecipe.setSatisfied(AbstractServiceReferenceRecipe.java:305)
        at org.apache.aries.blueprint.container.AbstractServiceReferenceRecipe.serviceRemoved(AbstractServiceReferenceRecipe.java:281)
        at org.apache.aries.blueprint.container.AbstractServiceReferenceRecipe.serviceChanged(AbstractServiceReferenceRecipe.java:251)
        at org.apache.felix.framework.util.EventDispatcher.invokeServiceListenerCallback(EventDispatcher.java:859)
        at org.apache.felix.framework.util.EventDispatcher.fireEventImmediately(EventDispatcher.java:721)
        at org.apache.felix.framework.util.EventDispatcher.fireServiceEvent(EventDispatcher.java:649)
        at org.apache.felix.framework.Felix.fireServiceEvent(Felix.java:3792)
        at org.apache.felix.framework.Felix.access$000(Felix.java:89)
        at org.apache.felix.framework.Felix$2.serviceChanged(Felix.java:734)
        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:201)
        at org.apache.aries.blueprint.container.BlueprintContainerImpl.unregisterServices(BlueprintContainerImpl.java:673)
        at org.apache.aries.blueprint.container.BlueprintContainerImpl.namespaceHandlerUnregistered(BlueprintContainerImpl.java:866)
        at org.apache.aries.blueprint.namespace.NamespaceHandlerRegistryImpl$NamespaceHandlerSetImpl.unregisterHandler(NamespaceHandlerRegis
tryImpl.java:365)
        at org.apache.aries.blueprint.namespace.NamespaceHandlerRegistryImpl.unregisterHandler(NamespaceHandlerRegistryImpl.java:149)
        at org.apache.aries.blueprint.namespace.NamespaceHandlerRegistryImpl.removedService(NamespaceHandlerRegistryImpl.java:119)
        at org.osgi.util.tracker.ServiceTracker$Tracked.customizerRemoved(ServiceTracker.java:922)
        at org.osgi.util.tracker.AbstractTracked.untrack(AbstractTracked.java:351)
        at org.osgi.util.tracker.ServiceTracker$Tracked.serviceChanged(ServiceTracker.java:865)
        at org.apache.felix.framework.util.EventDispatcher.invokeServiceListenerCallback(EventDispatcher.java:859)
        at org.apache.felix.framework.util.EventDispatcher.fireEventImmediately(EventDispatcher.java:721)
        at org.apache.felix.framework.util.EventDispatcher.fireServiceEvent(EventDispatcher.java:649)
        at org.apache.felix.framework.Felix.fireServiceEvent(Felix.java:3792)
        at org.apache.felix.framework.Felix.access$000(Felix.java:89)
        at org.apache.felix.framework.Felix$2.serviceChanged(Felix.java:734)
        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:201)
        at org.apache.aries.blueprint.container.BlueprintContainerImpl.unregisterServices(BlueprintContainerImpl.java:673)
        at org.apache.aries.blueprint.container.BlueprintContainerImpl.destroy(BlueprintContainerImpl.java:822)
        at org.apache.aries.blueprint.container.BlueprintExtender.destroyContext(BlueprintExtender.java:250)
        at org.apache.aries.blueprint.container.BlueprintExtender.bundleChanged(BlueprintExtender.java:242)
        at org.apache.aries.blueprint.container.BlueprintExtender$BlueprintBundleTrackerCustomizer.modifiedBundle(BlueprintExtender.java:431
)
        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:795)
        at org.apache.felix.framework.util.EventDispatcher.fireEventImmediately(EventDispatcher.java:717)
        at org.apache.felix.framework.util.EventDispatcher.fireBundleEvent(EventDispatcher.java:597)
        at org.apache.felix.framework.Felix.fireBundleEvent(Felix.java:3781)
        at org.apache.felix.framework.Felix.stopBundle(Felix.java:2221)
        at org.apache.felix.framework.Felix$RefreshHelper.stop(Felix.java:4660)
        at org.apache.felix.framework.Felix.refreshPackages(Felix.java:3601)
        at org.apache.felix.framework.PackageAdminImpl.run(PackageAdminImpl.java:365)
        at java.lang.Thread.run(Thread.java:662)
*ERROR* Configuration for org.ops4j.pax.web has already been used for service [org.osgi.service.cm.ManagedService, id=307, bundle=158] and w
ill now also be given to [org.osgi.service.cm.ManagedService, id=466, bundle=158]

Environment

  • Fuse ESB 4.4.x

Subscriber exclusive content

A Red Hat subscription provides unlimited access to our knowledgebase, tools, and much more.

Current Customers and Partners

Log in for full access

Log In

New to Red Hat?

Learn more about Red Hat subscriptions

Using a Red Hat product through a public cloud?

How to access this content