You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@sling.apache.org by "Davide Giannella (JIRA)" <ji...@apache.org> on 2015/06/18 16:12:01 UTC

[jira] [Created] (SLING-4820) NoClassDefFoundError and ServiceException when using Sling with Oak 1.3.0

Davide Giannella created SLING-4820:
---------------------------------------

             Summary: NoClassDefFoundError and ServiceException when using Sling with Oak 1.3.0
                 Key: SLING-4820
                 URL: https://issues.apache.org/jira/browse/SLING-4820
             Project: Sling
          Issue Type: Bug
    Affects Versions: JCR Resource 2.5.0
            Reporter: Davide Giannella


If you try to run Sling with the latest Oak 1.3.0 you get a couple of
errors (see below) most probably due to the fact that in 1.3.0 Oak
exported a different API.

{noformat:title=List of changed packages in Oak}
./oak-core/src/main/java/org/apache/jackrabbit/oak/api/jmx/package-info.java:@Version("2.0.0")
./oak-core/src/main/java/org/apache/jackrabbit/oak/api/package-info.java:@Version("2.0")
./oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/observation/package-info.java:@Version("2.0.0")
./oak-core/src/main/java/org/apache/jackrabbit/oak/plugins/segment/file/package-info.java:@Version("2.0.0")
./oak-core/src/main/java/org/apache/jackrabbit/oak/query/package-info.java:@Version("2.0")
./oak-core/src/main/java/org/apache/jackrabbit/oak/spi/gc/package-info.java:@Version("2.0.0")
./oak-core/src/main/java/org/apache/jackrabbit/oak/spi/query/package-info.java:@Version("2.0.0")
./oak-core/src/main/java/org/apache/jackrabbit/oak/spi/security/user/package-info.java:@Version("2.0")
./oak-lucene/src/main/java/org/apache/jackrabbit/oak/plugins/index/lucene/package-info.java:@Version("2.0.0")
{noformat}

{noformat:title=Error messages}
17.06.2015 14:57:01.912 *ERROR* [FelixStartLevel] org.apache.sling.jcr.resource.internal.helper.jcr.JcrResourceProviderFactory Unable to instantiate improved JCR Resource listener for Oak. Using fallback.
java.lang.NoClassDefFoundError: org/apache/jackrabbit/oak/plugins/observation/NodeObserver
	at java.lang.ClassLoader.defineClass1(Native Method)
	at java.lang.ClassLoader.defineClass(ClassLoader.java:800)
	at org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.defineClass(BundleWiringImpl.java:2350)
	at org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.findClass(BundleWiringImpl.java:2134)
	at org.apache.felix.framework.BundleWiringImpl.findClassOrResourceByDelegation(BundleWiringImpl.java:1526)
	at org.apache.felix.framework.BundleWiringImpl.access$400(BundleWiringImpl.java:79)
	at org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.loadClass(BundleWiringImpl.java:1998)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
	at org.apache.sling.jcr.resource.internal.helper.jcr.JcrResourceProviderFactory.activate(JcrResourceProviderFactory.java:150)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:606)
	at org.apache.felix.scr.impl.helper.BaseMethod.invokeMethod(BaseMethod.java:222)
	at org.apache.felix.scr.impl.helper.BaseMethod.access$500(BaseMethod.java:37)
	at org.apache.felix.scr.impl.helper.BaseMethod$Resolved.invoke(BaseMethod.java:615)
	at org.apache.felix.scr.impl.helper.BaseMethod.invoke(BaseMethod.java:499)
	at org.apache.felix.scr.impl.helper.ActivateMethod.invoke(ActivateMethod.java:295)
	at org.apache.felix.scr.impl.manager.SingleComponentManager.createImplementationObject(SingleComponentManager.java:302)
	at org.apache.felix.scr.impl.manager.SingleComponentManager.createComponent(SingleComponentManager.java:113)
	at org.apache.felix.scr.impl.manager.SingleComponentManager.getService(SingleComponentManager.java:832)
	at org.apache.felix.scr.impl.manager.SingleComponentManager.getServiceInternal(SingleComponentManager.java:799)
	at org.apache.felix.scr.impl.manager.SingleComponentManager.getService(SingleComponentManager.java:749)
	at org.apache.felix.framework.ServiceRegistrationImpl.getFactoryUnchecked(ServiceRegistrationImpl.java:347)
	at org.apache.felix.framework.ServiceRegistrationImpl.getService(ServiceRegistrationImpl.java:247)
	at org.apache.felix.framework.ServiceRegistry.getService(ServiceRegistry.java:343)
	at org.apache.felix.framework.Felix.getService(Felix.java:3692)
	at org.apache.felix.framework.BundleContextImpl.getService(BundleContextImpl.java:470)
	at org.apache.felix.scr.impl.manager.SingleRefPair.getServiceObject(SingleRefPair.java:72)
	at org.apache.felix.scr.impl.helper.BindMethod.getServiceObject(BindMethod.java:576)
	at org.apache.felix.scr.impl.manager.DependencyManager.getServiceObject(DependencyManager.java:2037)
	at org.apache.felix.scr.impl.manager.DependencyManager$MultipleDynamicCustomizer.prebind(DependencyManager.java:396)
	at org.apache.felix.scr.impl.manager.DependencyManager.prebind(DependencyManager.java:1410)
	at org.apache.felix.scr.impl.manager.AbstractComponentManager.collectDependencies(AbstractComponentManager.java:983)
	at org.apache.felix.scr.impl.manager.SingleComponentManager.getServiceInternal(SingleComponentManager.java:778)
	at org.apache.felix.scr.impl.manager.AbstractComponentManager.activateInternal(AbstractComponentManager.java:724)
	at org.apache.felix.scr.impl.manager.DependencyManager$SingleStaticCustomizer.addedService(DependencyManager.java:927)
	at org.apache.felix.scr.impl.manager.DependencyManager$SingleStaticCustomizer.addedService(DependencyManager.java:891)
	at org.apache.felix.scr.impl.manager.ServiceTracker$Tracked.customizerAdded(ServiceTracker.java:1492)
	at org.apache.felix.scr.impl.manager.ServiceTracker$Tracked.customizerAdded(ServiceTracker.java:1413)
	at org.apache.felix.scr.impl.manager.ServiceTracker$AbstractTracked.trackAdding(ServiceTracker.java:1222)
	at org.apache.felix.scr.impl.manager.ServiceTracker$AbstractTracked.track(ServiceTracker.java:1158)
	at org.apache.felix.scr.impl.manager.ServiceTracker$Tracked.serviceChanged(ServiceTracker.java:1444)
	at org.apache.felix.framework.util.EventDispatcher.invokeServiceListenerCallback(EventDispatcher.java:987)
	at org.apache.felix.framework.util.EventDispatcher.fireEventImmediately(EventDispatcher.java:838)
	at org.apache.felix.framework.util.EventDispatcher.fireServiceEvent(EventDispatcher.java:545)
	at org.apache.felix.framework.Felix.fireServiceEvent(Felix.java:4560)
	at org.apache.felix.framework.Felix.registerService(Felix.java:3542)
	at org.apache.felix.framework.BundleContextImpl.registerService(BundleContextImpl.java:348)
	at org.apache.felix.scr.impl.manager.AbstractComponentManager$3.register(AbstractComponentManager.java:869)
	at org.apache.felix.scr.impl.manager.AbstractComponentManager$3.register(AbstractComponentManager.java:857)
	at org.apache.felix.scr.impl.manager.RegistrationManager.changeRegistration(RegistrationManager.java:133)
	at org.apache.felix.scr.impl.manager.AbstractComponentManager.registerService(AbstractComponentManager.java:915)
	at org.apache.felix.scr.impl.manager.AbstractComponentManager.activateInternal(AbstractComponentManager.java:715)
	at org.apache.felix.scr.impl.manager.AbstractComponentManager.enable(AbstractComponentManager.java:399)
	at org.apache.felix.scr.impl.config.ConfigurableComponentHolder.enableComponents(ConfigurableComponentHolder.java:669)
	at org.apache.felix.scr.impl.BundleComponentActivator.initialEnable(BundleComponentActivator.java:184)
	at org.apache.felix.scr.impl.Activator.loadComponents(Activator.java:332)
	at org.apache.felix.scr.impl.Activator.access$000(Activator.java:49)
	at org.apache.felix.scr.impl.Activator$ScrExtension.start(Activator.java:257)
	at org.apache.felix.utils.extender.AbstractExtender.createExtension(AbstractExtender.java:259)
	at org.apache.felix.utils.extender.AbstractExtender.modifiedBundle(AbstractExtender.java:232)
	at org.osgi.util.tracker.BundleTracker$Tracked.customizerModified(BundleTracker.java:482)
	at org.osgi.util.tracker.BundleTracker$Tracked.customizerModified(BundleTracker.java:415)
	at org.osgi.util.tracker.AbstractTracked.track(AbstractTracked.java:232)
	at org.osgi.util.tracker.BundleTracker$Tracked.bundleChanged(BundleTracker.java:444)
	at org.apache.felix.framework.util.EventDispatcher.invokeBundleListenerCallback(EventDispatcher.java:913)
	at org.apache.felix.framework.util.EventDispatcher.fireEventImmediately(EventDispatcher.java:834)
	at org.apache.felix.framework.util.EventDispatcher.fireBundleEvent(EventDispatcher.java:516)
	at org.apache.felix.framework.Felix.fireBundleEvent(Felix.java:4544)
	at org.apache.felix.framework.Felix.startBundle(Felix.java:2166)
	at org.apache.felix.framework.Felix.setActiveStartLevel(Felix.java:1365)
	at org.apache.felix.framework.FrameworkStartLevelImpl.run(FrameworkStartLevelImpl.java:308)
	at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.ClassNotFoundException: org.apache.jackrabbit.oak.plugins.observation.NodeObserver not found by org.apache.sling.jcr.resource [123]
	at org.apache.felix.framework.BundleWiringImpl.findClassOrResourceByDelegation(BundleWiringImpl.java:1557)
	at org.apache.felix.framework.BundleWiringImpl.access$400(BundleWiringImpl.java:79)
	at org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.loadClass(BundleWiringImpl.java:1998)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
	... 74 common frames omitted

...

18.06.2015 09:47:22.913 *INFO* [FelixStartLevel] org.apache.sling.resource.inventory BundleEvent RESOLVED
18.06.2015 09:47:22.913 *INFO* [FelixStartLevel] org.apache.sling.resource.inventory BundleEvent STARTING
18.06.2015 09:47:22.922 *ERROR* [FelixDispatchQueue] org.apache.sling.serviceusermapper FrameworkEvent ERROR (org.osgi.framework.ServiceException: Service factory returned null.)
org.osgi.framework.ServiceException: Service factory returned null.
	at org.apache.felix.framework.ServiceRegistrationImpl.getFactoryUnchecked(ServiceRegistrationImpl.java:380)
	at org.apache.felix.framework.ServiceRegistrationImpl.getService(ServiceRegistrationImpl.java:247)
	at org.apache.felix.framework.ServiceRegistry.getService(ServiceRegistry.java:343)
	at org.apache.felix.framework.Felix.getService(Felix.java:3692)
	at org.apache.felix.framework.Felix.getServiceReferences(Felix.java:3603)
	at org.apache.felix.framework.Felix.getAllowedServiceReferences(Felix.java:3655)
	at org.apache.felix.framework.BundleContextImpl.getServiceReferences(BundleContextImpl.java:434)
	at org.apache.felix.scr.impl.manager.ServiceTracker.getInitialReferences(ServiceTracker.java:363)
	at org.apache.felix.scr.impl.manager.ServiceTracker.open(ServiceTracker.java:334)
	at org.apache.felix.scr.impl.manager.ServiceTracker.open(ServiceTracker.java:288)
	at org.apache.felix.scr.impl.manager.DependencyManager.setTargetFilter(DependencyManager.java:1939)
	at org.apache.felix.scr.impl.manager.DependencyManager.setTargetFilter(DependencyManager.java:1822)
	at org.apache.felix.scr.impl.manager.AbstractComponentManager.updateTargets(AbstractComponentManager.java:1120)
	at org.apache.felix.scr.impl.manager.AbstractComponentManager.enableInternal(AbstractComponentManager.java:641)
	at org.apache.felix.scr.impl.manager.AbstractComponentManager.enable(AbstractComponentManager.java:396)
	at org.apache.felix.scr.impl.config.ConfigurableComponentHolder.enableComponents(ConfigurableComponentHolder.java:669)
	at org.apache.felix.scr.impl.BundleComponentActivator.initialEnable(BundleComponentActivator.java:184)
	at org.apache.felix.scr.impl.Activator.loadComponents(Activator.java:332)
	at org.apache.felix.scr.impl.Activator.access$000(Activator.java:49)
	at org.apache.felix.scr.impl.Activator$ScrExtension.start(Activator.java:257)
	at org.apache.felix.utils.extender.AbstractExtender.createExtension(AbstractExtender.java:259)
	at org.apache.felix.utils.extender.AbstractExtender.modifiedBundle(AbstractExtender.java:232)
	at org.osgi.util.tracker.BundleTracker$Tracked.customizerModified(BundleTracker.java:482)
	at org.osgi.util.tracker.BundleTracker$Tracked.customizerModified(BundleTracker.java:415)
	at org.osgi.util.tracker.AbstractTracked.track(AbstractTracked.java:232)
	at org.osgi.util.tracker.BundleTracker$Tracked.bundleChanged(BundleTracker.java:444)
	at org.apache.felix.framework.util.EventDispatcher.invokeBundleListenerCallback(EventDispatcher.java:913)
	at org.apache.felix.framework.util.EventDispatcher.fireEventImmediately(EventDispatcher.java:834)
	at org.apache.felix.framework.util.EventDispatcher.fireBundleEvent(EventDispatcher.java:516)
	at org.apache.felix.framework.Felix.fireBundleEvent(Felix.java:4544)
	at org.apache.felix.framework.Felix.startBundle(Felix.java:2166)
	at org.apache.felix.framework.Felix.setActiveStartLevel(Felix.java:1365)
	at org.apache.felix.framework.FrameworkStartLevelImpl.run(FrameworkStartLevelImpl.java:308)
	at java.lang.Thread.run(Thread.java:745)
{noformat}




--
This message was sent by Atlassian JIRA
(v6.3.4#6332)