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

SpringDoc Swagger UI无法预览Request及Response Bean模型问题求助

解决方案

  1. 配置Jackson忽略Setter冲突
    该错误根源是SpringDoc序列化Schema时,Jackson检测到第三方依赖的Bean存在同名称不同参数的Setter方法导致序列化异常,添加如下配置类即可解决:
import com.fasterxml.jackson.databind.ObjectMapper;
import io.swagger.v3.core.jackson.ModelResolver;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

@Configuration
public class SpringDocJacksonConfig {
    @Bean
    public ModelResolver modelResolver(ObjectMapper objectMapper) {
        // 关闭Getter当作Setter使用的规则,解决同名称Setter冲突
        objectMapper.configure(com.fasterxml.jackson.databind.MapperFeature.USE_GETTERS_AS_SETTERS, false);
        // 忽略未知属性、空Bean序列化报错
        objectMapper.configure(com.fasterxml.jackson.databind.DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);
        objectMapper.configure(com.fasterxml.jackson.databind.SerializationFeature.FAIL_ON_EMPTY_BEANS, false);
        return new ModelResolver(objectMapper);
    }
}
  1. 排除冲突类扫描
    从报错日志中获取到冲突类的全限定名后,在配置文件中添加SpringDoc忽略扫描规则,以yaml配置为例:
springdoc:
  ignored-parameter-types:
    - 冲突类全限定名(例如org.springframework.data.domain.Pageable、javax.servlet.http.HttpServletResponse等)
  1. 版本适配调整
    Spring Boot 2.5.5对应适配的SpringDoc稳定版本为1.6.x系列,当前使用的1.5.11版本存在兼容性问题,调整依赖版本:
<dependency>
    <groupId>org.springdoc</groupId>
    <artifactId>springdoc-openapi-ui</artifactId>
    <version>1.6.14</version>
</dependency>
  1. 排除Swagger1.x依赖冲突
    检查项目所有依赖,排除掉swagger-core、swagger-annotations的1.x版本,避免和SpringDoc内置的Swagger2.x版本产生冲突。

内容的提问来源于stack exchange,提问作者Hitesh Kirtane

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.01 07:54:02