Я интегрировал старое приложение Struts 2.5 с Spring Boot 2. Функциональность приложения работает, но при запуске выдается это исключение, как я могу избежать этой ошибки? или это безопасно игнорировать? спасибо
основные зависимости, которые я использую:
- JDK-11.0.4
- String Boot v. 2.2.6
- struts2 v 2.5.22
- struts2- jquery -plugin v. 4.0.3
- Struts2-Convention-Plugin v. 2.5.22
- struts2-java8-support- плагин v. 2.5.2
моя конфигурация Struts, как показано ниже, и я использую настройки действий на основе аннотаций
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.5//EN"
"http://struts.apache.org/dtds/struts-2.5.dtd">
<struts>
<constant name="struts.enable.DynamicMethodInvocation" value="false" />
<constant name="struts.devMode" value="true"/>
<constant name="struts.action.extension" value="html"/>
<constant name="struts.convention.action.packages" value="com.xxx.yyy.zzz.action"/>
<constant name="struts.convention.classes.reload" value="false" />
<constant name="struts.convention.exclude.parentClassLoader" value="false" />
<constant name="struts.custom.i18n.resources" value="messages" />
<package name="default" extends="struts-default" namespace="/">
</package>
<constant name="struts.ckeditor.allowUploads" value="true" />
<constant name="struts.ckeditor.allowedFileExtensions" value="jpg,jpeg,png" />
<constant name="struts.ckeditor.uploadFolder" value="/imageUploads" />
</struts>
Журнал ошибок при запуске
07:33.081 INFO 13309 --- [ main] o.a.s.spring.StrutsSpringObjectFactory : Initializing Struts-Spring integration...
2020-04-26 11:07:33.081 INFO 13309 --- [ main] c.o.xwork2.spring.SpringObjectFactory : Setting autowire strategy to name
2020-04-26 11:07:33.082 INFO 13309 --- [ main] o.a.s.spring.StrutsSpringObjectFactory : ... initialized Struts-Spring integration successfully
2020-04-26 11:07:33.581 ERROR 13309 --- [ main] o.a.struts2.convention.Java8ClassFinder : Unable to read class [com.xxx.yyy.zzz.action.IndexAction]
java.lang.IllegalArgumentException: null
at org.objectweb.asm.ClassReader.<init>(Unknown Source) ~[asm-5.0.2.jar:5.0.2]
at org.objectweb.asm.ClassReader.<init>(Unknown Source) ~[asm-5.0.2.jar:5.0.2]
at org.objectweb.asm.ClassReader.<init>(Unknown Source) ~[asm-5.0.2.jar:5.0.2]
at org.apache.struts2.convention.Java8ClassFinder.readClassDef(Java8ClassFinder.java:442) ~[struts2-java8-support-plugin-2.5.2.jar:2.5.22]
at org.apache.struts2.convention.Java8ClassFinder.access$200(Java8ClassFinder.java:61) ~[struts2-java8-support-plugin-2.5.2.jar:2.5.22]
at org.apache.struts2.convention.Java8ClassFinder$InfoBuildingClassVisitor.extractSuperInterfaces(Java8ClassFinder.java:495) ~[struts2-java8-support-plugin-2.5.2.jar:2.5.22]
at org.apache.struts2.convention.Java8ClassFinder$InfoBuildingClassVisitor.visit(Java8ClassFinder.java:482) ~[struts2-java8-support-plugin-2.5.2.jar:2.5.22]
at org.objectweb.asm.ClassReader.accept(Unknown Source) ~[asm-5.0.2.jar:5.0.2]
at org.objectweb.asm.ClassReader.accept(Unknown Source) ~[asm-5.0.2.jar:5.0.2]
at org.apache.struts2.convention.Java8ClassFinder.readClassDef(Java8ClassFinder.java:443) ~[struts2-java8-support-plugin-2.5.2.jar:2.5.22]
at org.apache.struts2.convention.Java8ClassFinder.access$200(Java8ClassFinder.java:61) ~[struts2-java8-support-plugin-2.5.2.jar:2.5.22]
at org.apache.struts2.convention.Java8ClassFinder$InfoBuildingClassVisitor.extractSuperInterfaces(Java8ClassFinder.java:495) ~[struts2-java8-support-plugin-2.5.2.jar:2.5.22]
at org.apache.struts2.convention.Java8ClassFinder$InfoBuildingClassVisitor.visit(Java8ClassFinder.java:482) ~[struts2-java8-support-plugin-2.5.2.jar:2.5.22]
.......
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1215) ~[spring-boot-2.2.6.RELEASE.jar:2.2.6.RELEASE]
at com.xxx.yyy.zzz.Application.main(Application.java:18) ~[classes/:na]
2020-04-26 11:07:34.078 INFO 13309 --- [ main] o.s.s.concurrent.ThreadPoolTaskExecutor : Initializing ExecutorService 'applicationTaskExecutor'