java 升级spring-web版本后出错

aiazj4mn  于 2023-02-02  发布在  Java
关注(0)|答案(1)|浏览(783)

我在升级spring-web版本到6.0.0之后出现错误,之前是5.3.20

<dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-web</artifactId>
        <version>6.0.4</version>
      </dependency>
Cannot access 'status': it is invisible (private in a supertype) in 'ResponseStatusException'

is ResponseStatusException -> {
                    serverWebExchange.response.statusCode = throwable.status
         }
xlpyo6sf

xlpyo6sf1#

在Spring 5.3.x中,ResponseStatusException通常直接提供getStatus(),如您在java文档https://docs.spring.io/spring-framework/docs/5.3.x/javadoc-api/中所见
在版本6.0.x中,它发生了变化,ResponseStatusExceptionErrorResponseException扩展而来,ErrorResponseException没有直接可用的getStatus()方法。
相反,您需要调用responseStatusException.getBody().getStatus()以正确访问状态。
从你的问题看,不清楚你是直接在你的代码中访问status,还是这个代码是某个库的一部分。如果它是库的一部分,那么你就需要把库的版本升级到与spring 6兼容的版本。

相关问题