You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@aries.apache.org by "Valentin Mayamsin (JIRA)" <ji...@apache.org> on 2014/01/23 20:44:38 UTC

[jira] [Created] (ARIES-1151) NullPointerException in BundleWiringImpl.findClassOrResourceByDelegation

Valentin Mayamsin created ARIES-1151:
----------------------------------------

             Summary: NullPointerException in BundleWiringImpl.findClassOrResourceByDelegation
                 Key: ARIES-1151
                 URL: https://issues.apache.org/jira/browse/ARIES-1151
             Project: Aries
          Issue Type: Bug
          Components: Blueprint
    Affects Versions: blueprint-core-1.1.0
         Environment: linux
            Reporter: Valentin Mayamsin


There is a weird NPE happening under the following conditions: 

1) The bundle wires Apache Camel using blueprint.xml. If I remove camel from blueprint.xml, the issue doesn't occur 
2) The bundle starts fine for the first time 
3) The bundle restarts successfully by hand if it's not being redeployed 
4) The bundle fails to restart during hot deployment following with NPE (specifically "install -s mvn:..." and "dev:watch *" features used for hot deployment, other methods not tested) 

The workaround is to uninstall old bundle and install new bundle (PID changes) 

Hope this is good enough to isolate the issue. 

Full stack trace: 
{code}
2014-01-21 11:25:17,424 | ERROR | Thread-72 | BlueprintContainerImpl | container.BlueprintContainerImpl 393 | 7 - org.apache.aries.blueprint.core - 1.1.0 | Unable to start blueprint container for bundle blah-blah-blah 
org.osgi.service.blueprint.container.ComponentDefinitionException: java.lang.NullPointerException 
        at org.apache.aries.blueprint.container.ReferenceRecipe.internalCreate(ReferenceRecipe.java:115)[7:org.apache.aries.blueprint.core:1.1.0] 
        at org.apache.aries.blueprint.di.AbstractRecipe$1.call(AbstractRecipe.java:79)[7:org.apache.aries.blueprint.core:1.1.0] 
        at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)[:1.7.0_21] 
        at java.util.concurrent.FutureTask.run(FutureTask.java:166)[:1.7.0_21] 
        at org.apache.aries.blueprint.di.AbstractRecipe.create(AbstractRecipe.java:88)[7:org.apache.aries.blueprint.core:1.1.0] 
        at org.apache.aries.blueprint.container.BeanRecipe.setProperty(BeanRecipe.java:933)[7:org.apache.aries.blueprint.core:1.1.0] 
        at org.apache.aries.blueprint.container.BeanRecipe.setProperties(BeanRecipe.java:907)[7:org.apache.aries.blueprint.core:1.1.0] 
        at org.apache.aries.blueprint.container.BeanRecipe.setProperties(BeanRecipe.java:888)[7:org.apache.aries.blueprint.core:1.1.0] 
        at org.apache.aries.blueprint.container.BeanRecipe.internalCreate2(BeanRecipe.java:820)[7:org.apache.aries.blueprint.core:1.1.0] 
        at org.apache.aries.blueprint.container.BeanRecipe.internalCreate(BeanRecipe.java:787)[7:org.apache.aries.blueprint.core:1.1.0]
        at org.apache.aries.blueprint.di.AbstractRecipe$1.call(AbstractRecipe.java:79)[7:org.apache.aries.blueprint.core:1.1.0] 
        at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)[:1.7.0_21] 
        at java.util.concurrent.FutureTask.run(FutureTask.java:166)[:1.7.0_21] 
        at org.apache.aries.blueprint.di.AbstractRecipe.create(AbstractRecipe.java:88)[7:org.apache.aries.blueprint.core:1.1.0] 
        at org.apache.aries.blueprint.container.BlueprintRepository.createInstances(BlueprintRepository.java:245)[7:org.apache.aries.blueprint.core:1.1.0] 
        at org.apache.aries.blueprint.container.BlueprintRepository.createInstance(BlueprintRepository.java:230)[7:org.apache.aries.blueprint.core:1.1.0] 
        at org.apache.aries.blueprint.container.BlueprintRepository.create(BlueprintRepository.java:155)[7:org.apache.aries.blueprint.core:1.1.0] 
        at org.apache.aries.blueprint.container.BlueprintContainerImpl.processProcessors(BlueprintContainerImpl.java:514)[7:org.apache.aries.blueprint.core:1.1.0] 
        at org.apache.aries.blueprint.container.BlueprintContainerImpl.doRun(BlueprintContainerImpl.java:353)[7:org.apache.aries.blueprint.core:1.1.0] 
        at org.apache.aries.blueprint.container.BlueprintContainerImpl.run(BlueprintContainerImpl.java:261)[7:org.apache.aries.blueprint.core:1.1.0] 
        at org.apache.aries.blueprint.container.BlueprintExtender.createContainer(BlueprintExtender.java:259)[7:org.apache.aries.blueprint.core:1.1.0] 
        at org.apache.aries.blueprint.container.BlueprintExtender.modifiedBundle(BlueprintExtender.java:222)[7:org.apache.aries.blueprint.core:1.1.0] 
        at org.apache.aries.util.tracker.hook.BundleHookBundleTracker$Tracked.customizerModified(BundleHookBundleTracker.java:500)[11:org.apache.aries.util:1.1.0] 
        at org.apache.aries.util.tracker.hook.BundleHookBundleTracker$Tracked.customizerModified(BundleHookBundleTracker.java:433)[11:org.apache.aries.util:1.1.0] 
        at org.apache.aries.util.tracker.hook.BundleHookBundleTracker$AbstractTracked.track(BundleHookBundleTracker.java:725)[11:org.apache.aries.util:1.1.0] 
        at org.apache.aries.util.tracker.hook.BundleHookBundleTracker$Tracked.bundleChanged(BundleHookBundleTracker.java:463)[11:org.apache.aries.util:1.1.0] 
        at org.apache.aries.util.tracker.hook.BundleHookBundleTracker$BundleEventHook.event(BundleHookBundleTracker.java:422)[11:org.apache.aries.util:1.1.0] 
        at org.apache.felix.framework.util.SecureAction.invokeBundleEventHook(SecureAction.java:1103)[org.apache.felix.framework-4.0.3.jar:] 
        at org.apache.felix.framework.util.EventDispatcher.createWhitelistFromHooks(EventDispatcher.java:695)[org.apache.felix.framework-4.0.3.jar:] 
        at org.apache.felix.framework.util.EventDispatcher.fireBundleEvent(EventDispatcher.java:483)[org.apache.felix.framework-4.0.3.jar:] 
        at org.apache.felix.framework.Felix.fireBundleEvent(Felix.java:4244)[org.apache.felix.framework-4.0.3.jar:] 
        at org.apache.felix.framework.Felix.startBundle(Felix.java:1923)[org.apache.felix.framework-4.0.3.jar:] 
        at org.apache.felix.framework.Felix.updateBundle(Felix.java:2235)[org.apache.felix.framework-4.0.3.jar:] 
        at org.apache.felix.framework.BundleImpl.update(BundleImpl.java:962)[org.apache.felix.framework-4.0.3.jar:] 
        at org.apache.karaf.shell.dev.watch.BundleWatcher.run(BundleWatcher.java:112)[29:org.apache.karaf.shell.dev:2.3.3] 
        at java.lang.Thread.run(Thread.java:722)[:1.7.0_21] 
Caused by: java.lang.NullPointerException 
        at org.apache.felix.framework.BundleWiringImpl.findClassOrResourceByDelegation(BundleWiringImpl.java:1432)[org.apache.felix.framework-4.0.3.jar:] 
        at org.apache.felix.framework.BundleWiringImpl.access$400(BundleWiringImpl.java:72)[org.apache.felix.framework-4.0.3.jar:] 
        at org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.loadClass(BundleWiringImpl.java:1843) 
        at java.lang.ClassLoader.loadClass(ClassLoader.java:410)[:1.7.0_21] 
        at java.lang.ClassLoader.loadClass(ClassLoader.java:356)[:1.7.0_21] 
        at java.lang.Class.forName0(Native Method)[:1.7.0_21] 
        at java.lang.Class.forName(Class.java:266)[:1.7.0_21] 
        at org.apache.aries.proxy.impl.interfaces.ProxyClassLoader.isInvalid(ProxyClassLoader.java:109)[10:org.apache.aries.proxy.impl:1.0.1] 
        at org.apache.aries.proxy.impl.interfaces.InterfaceProxyGenerator.getProxyInstance(InterfaceProxyGenerator.java:84)[10:org.apache.aries.proxy.impl:1.0.1] 
        at org.apache.aries.proxy.impl.AsmProxyManager.createNewProxy(AsmProxyManager.java:72)[10:org.apache.aries.proxy.impl:1.0.1] 
        at org.apache.aries.proxy.impl.AbstractProxyManager.createDelegatingInterceptingProxy(AbstractProxyManager.java:75)[10:org.apache.aries.proxy.impl:1.0.1] 
        at org.apache.aries.proxy.impl.AbstractProxyManager.createDelegatingProxy(AbstractProxyManager.java:40)[10:org.apache.aries.proxy.impl:1.0.1] 
        at org.apache.aries.blueprint.container.AbstractServiceReferenceRecipe.createProxy(AbstractServiceReferenceRecipe.java:306)[7:org.apache.aries.blueprint.core:1.1.0] 
        at org.apache.aries.blueprint.container.ReferenceRecipe.internalCreate(ReferenceRecipe.java:99)[7:org.apache.aries.blueprint.core:1.1.0] 
        ... 35 more
{code}



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)