You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Quarkus使用RestEasy Reactive的RestResponse返回时报ClassCastException错误

问题解决方案

错误根因

该类转换异常是项目内RESTEasy经典阻塞版本与RESTEasy Reactive版本依赖冲突导致:quarkus-spring-web依赖默认引入经典版RESTEasy实现,与RestResponse<T>所需的RESTEasy Reactive运行时委托实现不兼容,触发类类型转换错误。

修复方案

你可以根据自己的技术栈选择任意一种方案:

方案1:保留RESTEasy Reactive栈(推荐使用RestResponse<T>的场景)

  • 移除pom.xml中的quarkus-spring-web依赖,该依赖与RESTEasy Reactive生态不兼容,直接使用RESTEasy Reactive自带的JAX-RS注解开发接口即可
  • 修正代码中ResponseBuilder的导包,确保使用org.jboss.resteasy.reactive.RestResponse下的静态方法/构造器,简化后的代码示例如下:
import org.jboss.resteasy.reactive.RestResponse;
import java.util.List;

public RestResponse<List<SampleResponse>> findAll() {
    // 直接使用RestResponse的静态ok方法返回即可,无需手动构造Builder
    return RestResponse.ok(sampleService.findAll());
}

方案2:保留Spring Web栈

  • 移除pom.xml中的quarkus-resteasy-reactive、quarkus-resteasy-reactive-jackson两个RESTEasy Reactive相关依赖
  • 改用Spring生态原生的ResponseEntity<T>实现泛型返回值需求,示例代码如下:
import org.springframework.http.ResponseEntity;
import java.util.List;

public ResponseEntity<List<SampleResponse>> findAll() {
    return ResponseEntity.ok(sampleService.findAll());
}

内容的提问来源于stack exchange,提问作者Hugo Vinhal

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.23 18:27:02