You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@aries.apache.org by Charlie Mordant <cm...@gmail.com> on 2014/10/26 18:01:54 UTC

Aries Spi-Fly, Karaf 3.0.2 and NPE

Hi,

I'm trying to inject a service in a dynamically woven consumer (with
Spi-Fly).
Unfortunately, I end with a trace on the class that uses the
ServiceLoader.load() method.

Have you ever encountered this issue? Is there any workaround ?

Here's the full stacktrace:

2014-10-26 17:12:32,115 | DEBUG | lixDispatchQueue | bundle
          | 124 - org.apache.aries.spifly.dynamic.bundle - 1.0.1 |
FrameworkEvent ERROR - org.apache.aries.spifly.dynamic.bundle

java.lang.IllegalArgumentException: value null

at org.objectweb.asm.ClassWriter.a(Unknown
Source)[8:org.objectweb.asm.all:5.0.3]

at org.objectweb.asm.MethodWriter.visitLdcInsn(Unknown
Source)[8:org.objectweb.asm.all:5.0.3]

at
org.apache.aries.spifly.weaver.TCCLSetterVisitor$TCCLSetterMethodVisitor.visitMethodInsn(TCCLSetterVisitor.java:194)[124:org.apache.aries.spifly.dynamic.bundle:1.0.1]

at org.objectweb.asm.MethodVisitor.visitMethodInsn(Unknown
Source)[8:org.objectweb.asm.all:5.0.3]

at org.objectweb.asm.ClassReader.a(Unknown
Source)[8:org.objectweb.asm.all:5.0.3]

at org.objectweb.asm.ClassReader.b(Unknown
Source)[8:org.objectweb.asm.all:5.0.3]

at org.objectweb.asm.ClassReader.accept(Unknown
Source)[8:org.objectweb.asm.all:5.0.3]

at org.objectweb.asm.ClassReader.accept(Unknown
Source)[8:org.objectweb.asm.all:5.0.3]

at
org.apache.aries.spifly.dynamic.ClientWeavingHook.weave(ClientWeavingHook.java:61)[124:org.apache.aries.spifly.dynamic.bundle:1.0.1]

at
org.apache.felix.framework.util.SecureAction.invokeWeavingHook(SecureAction.java:1127)[org.apache.felix.framework-4.2.1.jar:]

at
org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.findClass(BundleWiringImpl.java:2057)[org.apache.felix.framework-4.2.1.jar:]

at
org.apache.felix.framework.BundleWiringImpl.findClassOrResourceByDelegation(BundleWiringImpl.java:1501)[org.apache.felix.framework-4.2.1.jar:]

at
org.apache.felix.framework.BundleWiringImpl.access$400(BundleWiringImpl.java:75)[org.apache.felix.framework-4.2.1.jar:]

at
org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.loadClass(BundleWiringImpl.java:1955)[org.apache.felix.framework-4.2.1.jar:]

at java.lang.ClassLoader.loadClass(ClassLoader.java:358)[:1.7.0_67]

at
org.apache.felix.framework.Felix.loadBundleClass(Felix.java:1844)[org.apache.felix.framework-4.2.1.jar:]

at
org.apache.felix.framework.BundleImpl.loadClass(BundleImpl.java:937)[org.apache.felix.framework-4.2.1.jar:]

at
org.apache.xbean.osgi.bundle.util.DelegatingBundle.findCachedClass(DelegatingBundle.java:201)[127:org.apache.xbean.bundleutils:3.18.0]

at
org.apache.xbean.osgi.bundle.util.DelegatingBundle.loadClass(DelegatingBundle.java:181)[127:org.apache.xbean.bundleutils:3.18.0]

at
org.ops4j.pax.swissbox.core.BundleClassLoader.findClass(BundleClassLoader.java:176)[160:org.ops4j.pax.swissbox.core:1.8.0]

at
org.ops4j.pax.swissbox.core.BundleClassLoader.loadClass(BundleClassLoader.java:194)[160:org.ops4j.pax.swissbox.core:1.8.0]

at java.lang.ClassLoader.loadClass(ClassLoader.java:358)[:1.7.0_67]

at
org.ops4j.pax.cdi.weld.impl.bda.AbstractClassLoaderResourceLoader.classForName(AbstractClassLoaderResourceLoader.java:44)[169:org.ops4j.pax.cdi.weld:0.9.0]

at
org.jboss.weld.bootstrap.BeanDeployer.loadClass(BeanDeployer.java:106)[166:org.jboss.weld.osgi-bundle:2.1.2.Final]

at
org.jboss.weld.bootstrap.BeanDeployer.addClass(BeanDeployer.java:94)[166:org.jboss.weld.osgi-bundle:2.1.2.Final]

at
org.jboss.weld.bootstrap.ConcurrentBeanDeployer$1.doWork(ConcurrentBeanDeployer.java:62)[166:org.jboss.weld.osgi-bundle:2.1.2.Final]

at
org.jboss.weld.bootstrap.ConcurrentBeanDeployer$1.doWork(ConcurrentBeanDeployer.java:60)[166:org.jboss.weld.osgi-bundle:2.1.2.Final]

at
org.jboss.weld.executor.IterativeWorkerTaskFactory$1.call(IterativeWorkerTaskFactory.java:60)[166:org.jboss.weld.osgi-bundle:2.1.2.Final]

at
org.jboss.weld.executor.IterativeWorkerTaskFactory$1.call(IterativeWorkerTaskFactory.java:53)[166:org.jboss.weld.osgi-bundle:2.1.2.Final]

at java.util.concurrent.FutureTask.run(FutureTask.java:262)[:1.7.0_67]

at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)[:1.7.0_67]

at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)[:1.7.0_67]

at java.lang.Thread.run(Thread.java:745)[:1.7.0_67]

2014-10-26 17:12:32,116 | INFO  | weld-worker-4    | Bootstrap
          | 167 - org.jboss.logging.jboss-logging - 3.1.3.GA | WELD-000119:
Not generating any bean definitions from
org.apache.deltaspike.core.util.ServiceUtils because of underlying class
loading error: Type [unknown] not found.  If this is unexpected, enable
DEBUG logging to see the full error.

2014-10-26 17:12:32,117 | DEBUG | weld-worker-4    | Bootstrap
          | 167 - org.jboss.logging.jboss-logging - 3.1.3.GA | Catching

org.jboss.weld.resources.spi.ResourceLoadingException: Error loading class
org.apache.deltaspike.core.util.ServiceUtils

at
org.ops4j.pax.cdi.weld.impl.bda.AbstractClassLoaderResourceLoader.classForName(AbstractClassLoaderResourceLoader.java:50)[169:org.ops4j.pax.cdi.weld:0.9.0]

at
org.jboss.weld.bootstrap.BeanDeployer.loadClass(BeanDeployer.java:106)[166:org.jboss.weld.osgi-bundle:2.1.2.Final]

at
org.jboss.weld.bootstrap.BeanDeployer.addClass(BeanDeployer.java:94)[166:org.jboss.weld.osgi-bundle:2.1.2.Final]

at
org.jboss.weld.bootstrap.ConcurrentBeanDeployer$1.doWork(ConcurrentBeanDeployer.java:62)[166:org.jboss.weld.osgi-bundle:2.1.2.Final]

at
org.jboss.weld.bootstrap.ConcurrentBeanDeployer$1.doWork(ConcurrentBeanDeployer.java:60)[166:org.jboss.weld.osgi-bundle:2.1.2.Final]

at
org.jboss.weld.executor.IterativeWorkerTaskFactory$1.call(IterativeWorkerTaskFactory.java:60)[166:org.jboss.weld.osgi-bundle:2.1.2.Final]

at
org.jboss.weld.executor.IterativeWorkerTaskFactory$1.call(IterativeWorkerTaskFactory.java:53)[166:org.jboss.weld.osgi-bundle:2.1.2.Final]

at java.util.concurrent.FutureTask.run(FutureTask.java:262)[:1.7.0_67]

at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)[:1.7.0_67]

at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)[:1.7.0_67]

at java.lang.Thread.run(Thread.java:745)[:1.7.0_67]

Caused by: java.lang.ClassFormatError: Weaving hook failed.

at
org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.findClass(BundleWiringImpl.java:2074)

at
org.apache.felix.framework.BundleWiringImpl.findClassOrResourceByDelegation(BundleWiringImpl.java:1501)

at
org.apache.felix.framework.BundleWiringImpl.access$400(BundleWiringImpl.java:75)

at
org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.loadClass(BundleWiringImpl.java:1955)

at java.lang.ClassLoader.loadClass(ClassLoader.java:358)[:1.7.0_67]

at org.apache.felix.framework.Felix.loadBundleClass(Felix.java:1844)

at org.apache.felix.framework.BundleImpl.loadClass(BundleImpl.java:937)

at
org.apache.xbean.osgi.bundle.util.DelegatingBundle.findCachedClass(DelegatingBundle.java:201)

at
org.apache.xbean.osgi.bundle.util.DelegatingBundle.loadClass(DelegatingBundle.java:181)

at
org.ops4j.pax.swissbox.core.BundleClassLoader.findClass(BundleClassLoader.java:176)[160:org.ops4j.pax.swissbox.core:1.8.0]

at
org.ops4j.pax.swissbox.core.BundleClassLoader.loadClass(BundleClassLoader.java:194)[160:org.ops4j.pax.swissbox.core:1.8.0]

at java.lang.ClassLoader.loadClass(ClassLoader.java:358)[:1.7.0_67]

at
org.ops4j.pax.cdi.weld.impl.bda.AbstractClassLoaderResourceLoader.classForName(AbstractClassLoaderResourceLoader.java:44)[169:org.ops4j.pax.cdi.weld:0.9.0]

... 10 more

Caused by: java.lang.IllegalArgumentException: value null

at org.objectweb.asm.ClassWriter.a(Unknown
Source)[8:org.objectweb.asm.all:5.0.3]

at org.objectweb.asm.MethodWriter.visitLdcInsn(Unknown
Source)[8:org.objectweb.asm.all:5.0.3]

at
org.apache.aries.spifly.weaver.TCCLSetterVisitor$TCCLSetterMethodVisitor.visitMethodInsn(TCCLSetterVisitor.java:194)[124:org.apache.aries.spifly.dynamic.bundle:1.0.1]

at org.objectweb.asm.MethodVisitor.visitMethodInsn(Unknown
Source)[8:org.objectweb.asm.all:5.0.3]

at org.objectweb.asm.ClassReader.a(Unknown
Source)[8:org.objectweb.asm.all:5.0.3]

at org.objectweb.asm.ClassReader.b(Unknown
Source)[8:org.objectweb.asm.all:5.0.3]

at org.objectweb.asm.ClassReader.accept(Unknown
Source)[8:org.objectweb.asm.all:5.0.3]

at org.objectweb.asm.ClassReader.accept(Unknown
Source)[8:org.objectweb.asm.all:5.0.3]

at
org.apache.aries.spifly.dynamic.ClientWeavingHook.weave(ClientWeavingHook.java:61)[124:org.apache.aries.spifly.dynamic.bundle:1.0.1]

at
org.apache.felix.framework.util.SecureAction.invokeWeavingHook(SecureAction.java:1127)[org.apache.felix.framework-4.2.1.jar:]

at
org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.findClass(BundleWiringImpl.java:2057)[org.apache.felix.framework-4.2.1.jar:]

... 22 more



-- 
Charlie Mordant

Full OSGI/EE stack made with Karaf:
https://github.com/OsgiliathEnterprise/net.osgiliath.parent