I've seen some answers to this error for the asm version, so I checked the
library version.

I have tried both the version: 7.3.1 (which is the one used in the struts
pom), and 9.6 with the same error result.

El dom, 24 mar 2024 a las 17:40, Lukasz Lenart (<lukaszlen...@apache.org>)
escribió:

> This looks like you have another version of the ASM library on the
> classpath
>
> https://stackoverflow.com/questions/16209623/incompatibleclasschangeerror-class-classmetadatareadingvisitor-has-interface-cl
>
> czw., 21 mar 2024 o 15:00 DAngel <dangel....@gmail.com> napisał(a):
> >
> > Hello, thanks for answering
> >
> > Before starting tomcat I delete the content inside the directories
> >   "work" and "temp"
> >
> >
> > OGNL version:
> >     WEB-INF/lib/ognl-3.1.29.jar
> >     WEB-INF/lib/tiles-ognl-3.0.8.jar
> >
> >
> > The following is the error trace for an Action class
> > (the same thing is repeated for all Action classes)
> >
> > 10:34:20.402 [main] ERROR
> org.apache.struts2.convention.DefaultClassFinder
> > - Unable to read class [org.dlix.ui.actions.ListDetail]
> > java.lang.IncompatibleClassChangeError: class
> > org.apache.struts2.convention.DefaultClassFinder$InfoBuildingVisitor has
> > interface org.objectweb.asm.ClassVisitor as super class
> >         at
> >
> org.apache.struts2.convention.DefaultClassFinder.readClassDef(DefaultClassFinder.java:462)
> > ~[struts2-convention-plugin-2.5.33.jar:2.5.33]
> >         at
> >
> org.apache.struts2.convention.DefaultClassFinder.<init>(DefaultClassFinder.java:93)
> > [struts2-convention-plugin-2.5.33.jar:2.5.33]
> >         at
> >
> org.apache.struts2.convention.PackageBasedActionConfigBuilder.buildClassFinder(PackageBasedActionConfigBuilder.java:395)
> > [struts2-convention-plugin-2.5.33.jar:2.5.33]
> >         at
> >
> org.apache.struts2.convention.PackageBasedActionConfigBuilder.findActions(PackageBasedActionConfigBuilder.java:377)
> > [struts2-convention-plugin-2.5.33.jar:2.5.33]
> >         at
> >
> org.apache.struts2.convention.PackageBasedActionConfigBuilder.buildActionConfigs(PackageBasedActionConfigBuilder.java:333)
> > [struts2-convention-plugin-2.5.33.jar:2.5.33]
> >         at
> >
> org.apache.struts2.convention.ClasspathPackageProvider.loadPackages(ClasspathPackageProvider.java:52)
> > [struts2-convention-plugin-2.5.33.jar:2.5.33]
> >         at
> >
> com.opensymphony.xwork2.config.impl.DefaultConfiguration.reloadContainer(DefaultConfiguration.java:206)
> > [struts2-core-2.5.33.jar:2.5.33]
> >         at
> >
> com.opensymphony.xwork2.config.ConfigurationManager.getConfiguration(ConfigurationManager.java:66)
> > [struts2-core-2.5.33.jar:2.5.33]
> >         at
> >
> org.apache.struts2.dispatcher.Dispatcher.getContainer(Dispatcher.java:970)
> > [struts2-core-2.5.33.jar:2.5.33]
> >         at
> >
> org.apache.struts2.dispatcher.Dispatcher.init_PreloadConfiguration(Dispatcher.java:463)
> > [struts2-core-2.5.33.jar:2.5.33]
> >         at
> > org.apache.struts2.dispatcher.Dispatcher.init(Dispatcher.java:496)
> > [struts2-core-2.5.33.jar:2.5.33]
> >         at
> >
> org.apache.struts2.dispatcher.InitOperations.initDispatcher(InitOperations.java:73)
> > [struts2-core-2.5.33.jar:2.5.33]
> >         at
> >
> org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter.init(StrutsPrepareAndExecuteFilter.java:61)
> > [struts2-core-2.5.33.jar:2.5.33]
> >         at
> >
> org.apache.catalina.core.ApplicationFilterConfig.initFilter(ApplicationFilterConfig.java:262)
> > [catalina.jar:9.0.76]
> >         at
> >
> org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:244)
> > [catalina.jar:9.0.76]
> >         at
> >
> org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:97)
> > [catalina.jar:9.0.76]
> >         at
> >
> org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:4345)
> > [catalina.jar:9.0.76]
> >         at
> >
> org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:4972)
> > [catalina.jar:9.0.76]
> >         at
> > org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
> > [catalina.jar:9.0.76]
> >         at
> >
> org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:683)
> > [catalina.jar:9.0.76]
> >         at
> > org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:658)
> > [catalina.jar:9.0.76]
> >         at
> > org.apache.catalina.core.StandardHost.addChild(StandardHost.java:662)
> > [catalina.jar:9.0.76]
> >         at
> > org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:1023)
> > [catalina.jar:9.0.76]
> >         at
> >
> org.apache.catalina.startup.HostConfig$DeployWar.run(HostConfig.java:1910)
> > [catalina.jar:9.0.76]
> >         at
> > java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
> > [?:1.8.0_382]
> >         at java.util.concurrent.FutureTask.run(FutureTask.java:266)
> > [?:1.8.0_382]
> >         at
> >
> org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75)
> > [tomcat-util.jar:9.0.76]
> >         at
> >
> java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:112)
> > [?:1.8.0_382]
> >         at
> > org.apache.catalina.startup.HostConfig.deployWARs(HostConfig.java:824)
> > [catalina.jar:9.0.76]
> >         at
> > org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:474)
> > [catalina.jar:9.0.76]
> >         at
> > org.apache.catalina.startup.HostConfig.start(HostConfig.java:1617)
> > [catalina.jar:9.0.76]
> >         at
> >
> org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:318)
> > [catalina.jar:9.0.76]
> >         at
> >
> org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:123)
> > [catalina.jar:9.0.76]
> >         at
> >
> org.apache.catalina.util.LifecycleBase.setStateInternal(LifecycleBase.java:423)
> > [catalina.jar:9.0.76]
> >         at
> > org.apache.catalina.util.LifecycleBase.setState(LifecycleBase.java:366)
> > [catalina.jar:9.0.76]
> >         at
> >
> org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:893)
> > [catalina.jar:9.0.76]
> >         at
> >
> org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:795)
> > [catalina.jar:9.0.76]
> >         at
> > org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
> > [catalina.jar:9.0.76]
> >         at
> >
> org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1328)
> > [catalina.jar:9.0.76]
> >         at
> >
> org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1318)
> > [catalina.jar:9.0.76]
> >         at java.util.concurrent.FutureTask.run(FutureTask.java:266)
> > [?:1.8.0_382]
> >         at
> >
> org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75)
> > [tomcat-util.jar:9.0.76]
> >         at
> >
> java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:134)
> > [?:1.8.0_382]
> >         at
> >
> org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:866)
> > [catalina.jar:9.0.76]
> >         at
> >
> org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:249)
> > [catalina.jar:9.0.76]
> >         at
> > org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
> > [catalina.jar:9.0.76]
> >         at
> >
> org.apache.catalina.core.StandardService.startInternal(StandardService.java:428)
> > [catalina.jar:9.0.76]
> >         at
> > org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
> > [catalina.jar:9.0.76]
> >         at
> >
> org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:923)
> > [catalina.jar:9.0.76]
> >         at
> > org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
> > [catalina.jar:9.0.76]
> >         at org.apache.catalina.startup.Catalina.start(Catalina.java:772)
> > [catalina.jar:9.0.76]
> >         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> > ~[?:1.8.0_382]
> >         at
> >
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> > ~[?:1.8.0_382]
> >         at
> >
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> > ~[?:1.8.0_382]
> >         at java.lang.reflect.Method.invoke(Method.java:498)
> ~[?:1.8.0_382]
> >         at
> org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:347)
> > [bootstrap.jar:9.0.76]
> >         at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:478)
> > [bootstrap.jar:9.0.76]
> >
> >
> >
> > El mié, 20 mar 2024 a las 18:20, Lukasz Lenart (<lukaszlen...@apache.org
> >)
> > escribió:
> >
> > > śr., 20 mar 2024 o 01:34 DAngel <dangel....@gmail.com> napisał(a):
> > > > ERROR org.apache.struts2.convention.DefaultClassFinder - Unable to
> read
> > > > class [ mi.action.class]
> > > > java.lang.IncompatibleClassChangeError: class
> > > > org.apache.struts2.convention.DefaultClassFinder$InfoBuildingVisitor
> has
> > > > interface org.objectweb.asm.ClassVisitor as super class
> > >
> > > Could you post the whole stack trace?
> > >
> > > > java 1.8
> > > > tomcat 9.0.76
> > > > Linux Red Hat 8 (and Ubuntu 16.04)
> > > >
> > > > struts2-core, struts2-json-plugin, struts2-tiles-plugin,
> > > > struts2-convention-plugin [struts.version - 2.5.33]
> > > >
> > > > *asm, asm-commons, asm-tree*
> > > > I have tried both the version: 7.3.1 and 9.6 with the same error
> result
> > >
> > > 9.6 requires JDK8 which should be fine, did you try to clean up TEMPs?
> > >
> > > >   Has anyone had this error?
> > > >   Any advice to solve this error is welcome.
> > >
> > > I assume you do not use Maven, what OGNL version do you use?
> > >
> > >
> > > Cheers
> > > Lukasz
> > >
> > > ---------------------------------------------------------------------
> > > To unsubscribe, e-mail: user-unsubscr...@struts.apache.org
> > > For additional commands, e-mail: user-h...@struts.apache.org
> > >
> > >
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: user-unsubscr...@struts.apache.org
> For additional commands, e-mail: user-h...@struts.apache.org
>
>

Reply via email to