[ 
https://issues.apache.org/activemq/browse/SMX4-159?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Lars Heinemann updated SMX4-159:
--------------------------------

    Attachment: test_project.tar.gz

Added a test project which causes exactly the error.
Deploy the 2 artifacts and then run the osgi update command on the deployMe.xml 
bundle.
This will throw the classnotfound exception for org.mortbay.util.LifeCycle (at 
least here it does)


> Classloading/resolving is not working as expected
> -------------------------------------------------
>
>                 Key: SMX4-159
>                 URL: https://issues.apache.org/activemq/browse/SMX4-159
>             Project: ServiceMix 4
>          Issue Type: Bug
>    Affects Versions: 4.0-m2
>            Reporter: Lars Heinemann
>         Attachments: osgi_headers.txt, osgi_headers_bc.txt, 
> osgi_headers_jetty_bundle.txt, osgi_headers_shared_lib.txt, poller.xml, 
> test_project.tar.gz
>
>
> I defined a bundle for jetty 5.1.9 and deployed it to smx4.
> Then I defined a shared lib using this bundle and deployed it as well.
> Now I have a binding component using the shared lib and therefor also the 
> jetty bundle and deployed it.
> If I now deploy a xml file containing the endpoint configuration for the 
> binding component it throws a ClassNotFound Exception
> for class org/mortbay/util/LifeCycle.
> It seems that smx tries to load that class from the bundle which is generated 
> by the deployment of the xml file and not asking the jetty bundle.
> {noformat}
> [EMAIL PROTECTED]:osgi> update 155
> ERROR: EventDispatcher: Error during dispatch. 
> (java.lang.NoClassDefFoundError: org/mortbay/util/LifeCycle)
> java.lang.NoClassDefFoundError: org/mortbay/util/LifeCycle
>       at java.lang.ClassLoader.defineClass1(Native Method)
>       at java.lang.ClassLoader.defineClass(ClassLoader.java:620)
>       at 
> org.apache.felix.framework.searchpolicy.ContentClassLoader.findClass(ContentClassLoader.java:214)
>       at 
> org.apache.felix.framework.searchpolicy.ContentClassLoader.loadClassFromModule(ContentClassLoader.java:85)
>       at 
> org.apache.felix.framework.searchpolicy.ContentLoaderImpl.getClass(ContentLoaderImpl.java:141)
>       at 
> org.apache.felix.framework.searchpolicy.R4Wire.getClass(R4Wire.java:101)
>       at 
> org.apache.felix.framework.searchpolicy.R4SearchPolicyCore.searchImports(R4SearchPolicyCore.java:507)
>       at 
> org.apache.felix.framework.searchpolicy.R4SearchPolicyCore.findClassOrResource(R4SearchPolicyCore.java:468)
>       at 
> org.apache.felix.framework.searchpolicy.R4SearchPolicyCore.findClass(R4SearchPolicyCore.java:187)
>       at 
> org.apache.felix.framework.searchpolicy.R4SearchPolicy.findClass(R4SearchPolicy.java:45)
>       at 
> org.apache.felix.framework.searchpolicy.ContentClassLoader.loadClass(ContentClassLoader.java:109)
>       at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
>       at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
>       at 
> net.compart.jbi.portlistener.PortListenerProcess.<init>(PortListenerProcess.java:103)
>       at 
> net.compart.jbi.portlistener.PLConsumerEndpoint.startListener(PLConsumerEndpoint.java:311)
>       at 
> net.compart.jbi.portlistener.PLConsumerEndpoint.start(PLConsumerEndpoint.java:134)
>       at 
> org.apache.servicemix.common.DefaultServiceUnit.start(DefaultServiceUnit.java:78)
>       at 
> org.apache.servicemix.common.BaseServiceUnitManager.start(BaseServiceUnitManager.java:155)
>       at 
> org.apache.servicemix.jbi.deployer.impl.ServiceUnitImpl.start(ServiceUnitImpl.java:99)
>       at 
> org.apache.servicemix.jbi.deployer.impl.ServiceAssemblyImpl.changeState(ServiceAssemblyImpl.java:189)
>       at 
> org.apache.servicemix.jbi.deployer.impl.ServiceAssemblyImpl.transition(ServiceAssemblyImpl.java:165)
>       at 
> org.apache.servicemix.jbi.deployer.impl.ServiceAssemblyImpl.init(ServiceAssemblyImpl.java:106)
>       at 
> org.apache.servicemix.jbi.deployer.impl.Deployer.registerSA(Deployer.java:353)
>       at 
> org.apache.servicemix.jbi.deployer.impl.Deployer.registerDeployedServiceAssembly(Deployer.java:528)
>       at 
> org.apache.servicemix.jbi.deployer.impl.Deployer$2.addingService(Deployer.java:147)
>       at 
> org.osgi.util.tracker.ServiceTracker$Tracked.trackAdding(ServiceTracker.java:1021)
>       at 
> org.osgi.util.tracker.ServiceTracker$Tracked.track(ServiceTracker.java:999)
>       at 
> org.osgi.util.tracker.ServiceTracker$Tracked.serviceChanged(ServiceTracker.java:924)
>       at 
> org.apache.felix.framework.util.EventDispatcher.invokeServiceListenerCallback(EventDispatcher.java:765)
>       at 
> org.apache.felix.framework.util.EventDispatcher.fireEventImmediately(EventDispatcher.java:623)
>       at 
> org.apache.felix.framework.util.EventDispatcher.fireServiceEvent(EventDispatcher.java:554)
>       at org.apache.felix.framework.Felix.fireServiceEvent(Felix.java:3612)
>       at org.apache.felix.framework.Felix.access$000(Felix.java:36)
>       at org.apache.felix.framework.Felix$1.serviceChanged(Felix.java:626)
>       at 
> org.apache.felix.framework.ServiceRegistry.fireServiceChanged(ServiceRegistry.java:559)
>       at 
> org.apache.felix.framework.ServiceRegistry.registerService(ServiceRegistry.java:75)
>       at org.apache.felix.framework.Felix.registerService(Felix.java:2702)
>       at 
> org.apache.felix.framework.BundleContextImpl.registerService(BundleContextImpl.java:254)
>       at 
> org.apache.felix.framework.BundleContextImpl.registerService(BundleContextImpl.java:232)
>       at 
> org.apache.servicemix.common.osgi.EndpointExporter.afterPropertiesSet(EndpointExporter.java:79)
>       at 
> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1368)
>       at 
> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1334)
>       at 
> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:473)
>       at 
> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory$1.run(AbstractAutowireCapableBeanFactory.java:409)
>       at java.security.AccessController.doPrivileged(Native Method)
>       at 
> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:380)
>       at 
> org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:264)
>       at 
> org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:221)
>       at 
> org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:261)
>       at 
> org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:185)
>       at 
> org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:164)
>       at 
> org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:429)
>       at 
> org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:729)
>       at 
> org.springframework.osgi.context.support.AbstractDelegatedExecutionApplicationContext.completeRefresh(AbstractDelegatedExecutionApplicationContext.java:276)
>       at 
> org.springframework.osgi.extender.internal.dependencies.startup.DependencyWaiterApplicationContextExecutor$CompleteRefreshTask.run(DependencyWaiterApplicationContextExecutor.java:145)
>       at java.lang.Thread.run(Thread.java:595)
> {noformat}

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

Reply via email to