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