[ 
https://issues.apache.org/jira/browse/WW-5207?focusedWorklogId=798978&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-798978
 ]

ASF GitHub Bot logged work on WW-5207:
--------------------------------------

                Author: ASF GitHub Bot
            Created on: 08/Aug/22 15:01
            Start Date: 08/Aug/22 15:01
    Worklog Time Spent: 10m 
      Work Description: lukaszlenart opened a new pull request, #586:
URL: https://github.com/apache/struts/pull/586

   Fixes [WW-5207](https://issues.apache.org/jira/browse/WW-5207)




Issue Time Tracking
-------------------

            Worklog Id:     (was: 798978)
    Remaining Estimate: 0h
            Time Spent: 10m

> Convention Plugin - support for ASM 9
> -------------------------------------
>
>                 Key: WW-5207
>                 URL: https://issues.apache.org/jira/browse/WW-5207
>             Project: Struts 2
>          Issue Type: Bug
>          Components: Plugin - Convention
>    Affects Versions: 6.0.0
>            Reporter: Mirek Hankus
>            Priority: Major
>             Fix For: 6.0.1
>
>          Time Spent: 10m
>  Remaining Estimate: 0h
>
> According to https://issues.apache.org/jira/browse/WW-5148 support for ASM 
> 9.2 was implemented which implied support for JAVA 17.  Unfortunately, this 
> is not true, because convention plugin fails to start when app is compiled 
> with JAVA17
> This issue is very similar to https://issues.apache.org/jira/browse/WW-5005 
> which concerned JAVA 11.
> Convention plugin contains code
> {code:java}
>  public class InfoBuildingVisitor extends ClassVisitor {
>     private Info info;
>     private ClassFinder classFinder;
>     public InfoBuildingVisitor(ClassFinder classFinder) {
>         super(Opcodes.ASM7);
>         this.classFinder = classFinder;
>     }{code}
> which limits usage only to ASM7
> Right now following exception it thrown if you try to run struts 6.0 app 
> compiled with java 17
> {code:java}
> java.lang.UnsupportedOperationException: PermittedSubclasses requires ASM9
>         at 
> org.objectweb.asm.ClassVisitor.visitPermittedSubclass(ClassVisitor.java:266) 
> ~[asm-9.2.jar:9.2]
>         at org.objectweb.asm.ClassReader.accept(ClassReader.java:706) 
> ~[asm-9.2.jar:9.2]
>         at org.objectweb.asm.ClassReader.accept(ClassReader.java:424) 
> ~[asm-9.2.jar:9.2]
>         at 
> org.apache.struts2.convention.DefaultClassFinder.readClassDef(DefaultClassFinder.java:445)
>  ~[struts2-convention-plugin-6.0.0.jar:6.0.0]
>         at 
> org.apache.struts2.convention.DefaultClassFinder.<init>(DefaultClassFinder.java:93)
>  ~[struts2-convention-plugin-6.0.0.jar:6.0.0]
>         at 
> org.apache.struts2.convention.PackageBasedActionConfigBuilder.buildClassFinder(PackageBasedActionConfigBuilder.java:399)
>  ~[struts2-convention-plugin-6.0.0.jar:6.0.0]
>         at 
> org.apache.struts2.convention.PackageBasedActionConfigBuilder.findActions(PackageBasedActionConfigBuilder.java:381)
>  ~[struts2-convention-plugin-6.0.0.jar:6.0.0]
>         at 
> org.apache.struts2.convention.PackageBasedActionConfigBuilder.buildActionConfigs(PackageBasedActionConfigBuilder.java:337)
>  ~[struts2-convention-plugin-6.0.0.jar:6.0.0]
>         at 
> org.apache.struts2.convention.ClasspathPackageProvider.loadPackages(ClasspathPackageProvider.java:52)
>  ~[struts2-convention-plugin-6.0.0.jar:6.0.0]
>         at 
> com.opensymphony.xwork2.config.impl.DefaultConfiguration.reloadContainer(DefaultConfiguration.java:228)
>  ~[struts2-core-6.0.0.jar:6.0.0]
>         at 
> com.opensymphony.xwork2.config.ConfigurationManager.getConfiguration(ConfigurationManager.java:65)
>  ~[struts2-core-6.0.0.jar:6.0.0]
>         at 
> org.apache.struts2.dispatcher.Dispatcher.getContainer(Dispatcher.java:1035) 
> ~[struts2-core-6.0.0.jar:6.0.0]
>         at 
> org.apache.struts2.dispatcher.Dispatcher.init_PreloadConfiguration(Dispatcher.java:516)
>  ~[struts2-core-6.0.0.jar:6.0.0]
>         at org.apache.struts2.dispatcher.Dispatcher.init(Dispatcher.java:549) 
> ~[struts2-core-6.0.0.jar:6.0.0]
>         at 
> org.apache.struts2.dispatcher.InitOperations.initDispatcher(InitOperations.java:44)
>  ~[struts2-core-6.0.0.jar:6.0.0]
>         at 
> org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter.init(StrutsPrepareAndExecuteFilter.java:60)
>  ~[struts2-core-6.0.0.jar:6.0.0]
>  {code}



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

Reply via email to