blade框架2.9.1.RELEASE版本引入spring-web版本升级

Blade 未结 2 179
可乐是只猫
可乐是只猫 2024-07-25 09:28

一、该问题的重现步骤是什么?

  1.  安全漏洞扫描框架引入spring-web版本过低需升级(5.2.15-->5.3.33及以上)



二、你期待的结果是什么?实际看到的又是什么?

  1. 引入spring-web版本升级,并项目能正常启动


三、你正在使用的是什么产品,什么版本?在什么操作系统上?

  1. bladex框架2.9.1.RELEASE版本,Windows11操作系统,IntelliJ IDEA 2024.1.4开发工具


四、请提供详细的错误堆栈信息,这很重要。

image.png

五、若有更多详细信息,请在下面提供。

2条回答
  •  可乐是只猫
    2024-07-26 10:42

    单升级spring-web和spring-webmvc后启动会报错


    Error starting Tomcat context. Exception: org.springframework.beans.factory.BeanCreationException. Message: Error creating bean with name 'formContentFilter' defined in class path resource [org/springframework/boot/autoconfigure/web/servlet/WebMvcAutoConfiguration.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.springframework.boot.web.servlet.filter.OrderedFormContentFilter]: Factory method 'formContentFilter' threw exception; nested exception is java.lang.NoClassDefFoundError: Could not initialize class org.springframework.http.converter.json.MappingJackson2HttpMessageConverter

    作者追问:2024-07-26 10:42

    不能单独改这两个依赖,需要把spring全局的版本都改了,这样内部才是版本适配的。如果是cloud版本,还需要同时将springcloud也改成对应版本。

    回答: 2024-07-26 10:42

    更改spring全局只能到2.7.18这个版本用的spring-web版本是5.3.31,再另外引入5.3.33报错一样,要spring的版本在3.0.0以上的spring-web才符合安全整改,但是3.0需要jdk从8升级到17,javax.servlet包变为了jakarta,与blade框架很多地方会冲突报错

提交回复