You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@aries.apache.org by "ASF subversion and git services (Jira)" <ji...@apache.org> on 2022/12/07 15:49:00 UTC

[jira] [Commented] (ARIES-2070) aries-proxy incompatible with asm 5

    [ https://issues.apache.org/jira/browse/ARIES-2070?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17644396#comment-17644396 ] 

ASF subversion and git services commented on ARIES-2070:
--------------------------------------------------------

Commit 46e8662265b332157357b06360833bf4bc6ce547 in aries's branch refs/heads/dependabot/maven/samples/org.apache.derby-derby-10.14.2.0 from Jean-Baptiste Onofré
[ https://gitbox.apache.org/repos/asf?p=aries.git;h=46e866226 ]

Merge pull request #144 from holger-at-work/trunk

ARIES-2070 changed asm minimum version to 9

> aries-proxy incompatible with asm 5
> -----------------------------------
>
>                 Key: ARIES-2070
>                 URL: https://issues.apache.org/jira/browse/ARIES-2070
>             Project: Aries
>          Issue Type: Bug
>          Components: Proxy
>    Affects Versions: proxy-impl-1.1.11
>            Reporter: Holger
>            Assignee: Jean-Baptiste Onofré
>            Priority: Major
>             Fix For: proxy-impl-1.1.13
>
>
> Scenario:
> Our Apache Karaf 4.3.3 based application provides two versions of asm: 5.2 and 9.2.0
> When starting karaf, the following exception occurs:
> {code:java}
> 2022-03-24 15:38:28,216 | ERROR | tures-3-thread-1 | o.a.a.b.c.BlueprintContainerImpl | 192 - org.apache.aries.blueprint |    1.10.3 | Unable to start container for blueprint bundle org.apache.karaf.shell.core/4.3.3
> org.osgi.service.blueprint.container.ComponentDefinitionException: java.lang.NoClassDefFoundError: org/objectweb/asm/commons/AdviceAdapter
>     at org.apache.aries.blueprint.container.ReferenceRecipe.internalCreate(ReferenceRecipe.java:141)
>     at org.apache.aries.blueprint.di.AbstractRecipe$1.call(AbstractRecipe.java:81)
>     at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
>     at org.apache.aries.blueprint.di.AbstractRecipe.create(AbstractRecipe.java:90)
>     at org.apache.aries.blueprint.container.BeanRecipe.setProperty(BeanRecipe.java:810)
>     at org.apache.aries.blueprint.container.BeanRecipe.setProperties(BeanRecipe.java:784)
>     at org.apache.aries.blueprint.container.BeanRecipe.setProperties(BeanRecipe.java:765)
>     at org.apache.aries.blueprint.container.BeanRecipe.internalCreate2(BeanRecipe.java:699)
>     at org.apache.aries.blueprint.container.BeanRecipe.internalCreate(BeanRecipe.java:666)
>     at org.apache.aries.blueprint.di.AbstractRecipe$1.call(AbstractRecipe.java:81)
>     at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
>     at org.apache.aries.blueprint.di.AbstractRecipe.create(AbstractRecipe.java:90)
>     at org.apache.aries.blueprint.container.BlueprintRepository.createInstances(BlueprintRepository.java:360)
>     at org.apache.aries.blueprint.container.BlueprintRepository.createAll(BlueprintRepository.java:190)
>     at org.apache.aries.blueprint.container.BlueprintContainerImpl.instantiateEagerComponents(BlueprintContainerImpl.java:737)
>     at org.apache.aries.blueprint.container.BlueprintContainerImpl.doRun(BlueprintContainerImpl.java:433)
>     at org.apache.aries.blueprint.container.BlueprintContainerImpl.run(BlueprintContainerImpl.java:298)
>     at org.apache.aries.blueprint.container.BlueprintExtender.createContainer(BlueprintExtender.java:335)
>     at org.apache.aries.blueprint.container.BlueprintExtender.createContainer(BlueprintExtender.java:288)
>     at org.apache.aries.blueprint.container.BlueprintExtender.createContainer(BlueprintExtender.java:284)
>     at org.apache.aries.blueprint.container.BlueprintExtender.modifiedBundle(BlueprintExtender.java:274)
>     at org.apache.aries.util.tracker.hook.BundleHookBundleTracker$Tracked.customizerModified(BundleHookBundleTracker.java:500)
>     at org.apache.aries.util.tracker.hook.BundleHookBundleTracker$Tracked.customizerModified(BundleHookBundleTracker.java:433)
>     at org.apache.aries.util.tracker.hook.BundleHookBundleTracker$AbstractTracked.track(BundleHookBundleTracker.java:725)
>     at org.apache.aries.util.tracker.hook.BundleHookBundleTracker$Tracked.bundleChanged(BundleHookBundleTracker.java:463)
>     at org.apache.aries.util.tracker.hook.BundleHookBundleTracker$BundleEventHook.event(BundleHookBundleTracker.java:422)
>     at org.apache.felix.framework.util.SecureAction.invokeBundleEventHook(SecureAction.java:1180)
>     at org.apache.felix.framework.EventDispatcher.createWhitelistFromHooks(EventDispatcher.java:730)
>     at org.apache.felix.framework.EventDispatcher.fireBundleEvent(EventDispatcher.java:485)
>     at org.apache.felix.framework.Felix.fireBundleEvent(Felix.java:4817)
>     at org.apache.felix.framework.Felix.startBundle(Felix.java:2336)
>     at org.apache.felix.framework.BundleImpl.start(BundleImpl.java:998)
>     at org.apache.felix.framework.BundleImpl.start(BundleImpl.java:984)
>     at org.apache.karaf.features.internal.service.BundleInstallSupportImpl.startBundle(BundleInstallSupportImpl.java:165)
>     at org.apache.karaf.features.internal.service.FeaturesServiceImpl.startBundle(FeaturesServiceImpl.java:1160)
>     at org.apache.karaf.features.internal.service.Deployer.deploy(Deployer.java:1041)
>     at org.apache.karaf.features.internal.service.FeaturesServiceImpl.doProvision(FeaturesServiceImpl.java:1069)
>     at org.apache.karaf.features.internal.service.FeaturesServiceImpl.lambda$doProvisionInThread$13(FeaturesServiceImpl.java:1004)
>     at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
>     at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
>     at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
>     at java.base/java.lang.Thread.run(Thread.java:829)
> Caused by: java.lang.NoClassDefFoundError: org/objectweb/asm/commons/AdviceAdapter
>     at java.base/java.lang.ClassLoader.defineClass1(Native Method)
>     at java.base/java.lang.ClassLoader.defineClass(ClassLoader.java:1017)
>     at org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.defineClass(BundleWiringImpl.java:2312)
>     at org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.defineClassParallel(BundleWiringImpl.java:2130)
>     at org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.findClass(BundleWiringImpl.java:2064)
>     at org.apache.felix.framework.BundleWiringImpl.findClassOrResourceByDelegation(BundleWiringImpl.java:1533)
>     at org.apache.felix.framework.BundleWiringImpl.access$300(BundleWiringImpl.java:78)
>     at org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.loadClass(BundleWiringImpl.java:1950)
>     at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:522)
>     at org.apache.aries.proxy.impl.interfaces.ProxyClassLoader.createProxyClass(ProxyClassLoader.java:153)
>     at org.apache.aries.proxy.impl.interfaces.InterfaceProxyGenerator.getProxyInstance(InterfaceProxyGenerator.java:97)
>     at org.apache.aries.proxy.impl.AsmProxyManager.createNewProxy(AsmProxyManager.java:80)
>     at org.apache.aries.proxy.impl.AbstractProxyManager.createDelegatingInterceptingProxy(AbstractProxyManager.java:77)
>     at org.apache.aries.proxy.impl.AbstractProxyManager.createDelegatingProxy(AbstractProxyManager.java:42)
>     at org.apache.aries.blueprint.container.AbstractServiceReferenceRecipe.createProxy(AbstractServiceReferenceRecipe.java:332)
>     at org.apache.aries.blueprint.container.ReferenceRecipe.internalCreate(ReferenceRecipe.java:125)
>     ... 41 common frames omitted
> Caused by: java.lang.ClassNotFoundException: org.objectweb.asm.commons.AdviceAdapter not found by org.apache.aries.proxy [209]
>     at org.apache.felix.framework.BundleWiringImpl.findClassOrResourceByDelegation(BundleWiringImpl.java:1565)
>     at org.apache.felix.framework.BundleWiringImpl.access$300(BundleWiringImpl.java:78)
>     at org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.loadClass(BundleWiringImpl.java:1950)
>     at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:522)
>     ... 57 common frames omitted{code}
> The class org/objectweb/asm/commons/AdviceAdapter does exist in asm 9.2.0 but not in 5.2. So we guess aries is using the old version.
> When looking into the proxy's manifest, we see it accepts Version 5.
> We changed it to 9 and the error disappeared.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)