解决swagger主页访问,返回报错500问题

 更新时间:2024年09月30日 12:37:57   作者:郝猿  
在使用Swagger时遇到500错误,通过仔细的debug发现问题源于注解使用不当,具体表现为一个接口的入参被错误地注解了三个参数,而实际上只有两个,这导致了Swagger在解析时抛出了NullPointerException异常,解决方法是删除错误的第三个参数的注解

swagger主页访问,返回报错500

报错日志

下面展示一些 内联代码片

java.lang.NullPointerException: null
    at springfox.documentation.swagger2.mappers.RequestParameterMapper.bodyParameter(RequestParameterMapper.java:264)
    at springfox.documentation.swagger2.mappers.RequestParameterMapper.mapParameter(RequestParameterMapper.java:149)
    at springfox.documentation.swagger2.mappers.ServiceModelToSwagger2Mapper.beforeMappingOperations(ServiceModelToSwagger2Mapper.java:125)
    at springfox.documentation.swagger2.mappers.ServiceModelToSwagger2MapperImpl.mapOperation(ServiceModelToSwagger2MapperImpl.java:109)
    at springfox.documentation.swagger2.mappers.ServiceModelToSwagger2Mapper.mapOperations(ServiceModelToSwagger2Mapper.java:270)
    at springfox.documentation.swagger2.mappers.ServiceModelToSwagger2Mapper.lambda$mapApiListings$2(ServiceModelToSwagger2Mapper.java:258)
    at java.util.stream.ForEachOps$ForEachOp$OfRef.accept(ForEachOps.java:184)
    at java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1382)
    at java.util.stream.ReferencePipeline$Head.forEach(ReferencePipeline.java:580)
    at java.util.stream.ReferencePipeline$7$1.accept(ReferencePipeline.java:270)
    at java.util.TreeMap$ValueSpliterator.forEachRemaining(TreeMap.java:2897)
    at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:481)
    at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:471)
    at java.util.stream.ForEachOps$ForEachOp.evaluateSequential(ForEachOps.java:151)
    at java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateSequential(ForEachOps.java:174)
    at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
    at java.util.stream.ReferencePipeline.forEachOrdered(ReferencePipeline.java:423)
    at springfox.documentation.swagger2.mappers.ServiceModelToSwagger2Mapper.mapApiListings(ServiceModelToSwagger2Mapper.java:253)
    at springfox.documentation.swagger2.mappers.ServiceModelToSwagger2MapperImpl.mapDocumentation(ServiceModelToSwagger2MapperImpl.java:48)
    at springfox.documentation.swagger2.web.Swagger2ControllerWebMvc.getDocumentation(Swagger2ControllerWebMvc.j

这个问题找起来,需要慢慢debug

在(RequestParameterMapper.java:264)的地方打断点

找到报错的swagger注解类,基本上都是注解使用错误

我这问题是入参是两个参数

注解缺注明了三个参数,导致swagger报空指针

删除第三个swagger 入参注解就ok了

由于swagger报错不会提示具体是哪个类的注解有错误

所以需要慢慢的debug 循环

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Spring项目运行依赖spring-contex解析

    Spring项目运行依赖spring-contex解析

    这篇文章主要介绍了Spring项目运行依赖spring-contex解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-05-05
  • mvn中dependencyManagement的使用详解

    mvn中dependencyManagement的使用详解

    这篇文章主要介绍了mvn中dependencyManagement的使用,子项目中只是声明使用此依赖即可,可不用指定版本(将使用父pom同一指定的版本),若指定了版本,将以子项目的版本号为主,需要的朋友可以参考下
    2022-08-08
  • 新闻列表的分页查询java代码实现

    新闻列表的分页查询java代码实现

    这篇文章主要为大家详细介绍了新闻列表的分页查询java代码实现,感兴趣的小伙伴们可以参考一下
    2016-08-08
  • Spring+SpringMVC+Hibernate整合实例讲解

    Spring+SpringMVC+Hibernate整合实例讲解

    在本篇文章里小编给大家整理的是关于Spring+SpringMVC+Hibernate整合实例讲解,需要的朋友们可以学习下。
    2020-03-03
  • Java线程阻塞和唤醒的几种方式详解

    Java线程阻塞和唤醒的几种方式详解

    这篇文章主要介绍了Java线程阻塞和唤醒的几种方式详解,线程阻塞是指当一个线程无法继续执行时,它会进入阻塞状态,直到某个条件满足后才能继续执行,线程阻塞可以通过多种方式实现,如等待锁、等待IO操作、等待其他线程的完成等,需要的朋友可以参考下
    2023-10-10
  • SpringBoot集成tomcat详解实现过程

    SpringBoot集成tomcat详解实现过程

    采用spring boot之后,一切变得如此简单,打包->java-jar->运维,只需要一个jar包便可以随意部署安装。这篇文章,将对 spring boot集成tomcat的源码进行分析,探索其内部的原理
    2023-02-02
  • 关于Poi读取Excel引发内存溢出问题的解决方法

    关于Poi读取Excel引发内存溢出问题的解决方法

    这篇文章主要给大家介绍了关于Poi读取Excel引发内存溢出问题的解决方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面跟着小编来一起学习学习吧。
    2017-08-08
  • Spring Boot 项目启动失败的解决方案

    Spring Boot 项目启动失败的解决方案

    这篇文章主要介绍了Spring Boot 项目启动失败的解决方案,帮助大家更好的理解和学习使用Spring Boot,感兴趣的朋友可以了解下
    2021-03-03
  • 如何使用java制作假数据接口

    如何使用java制作假数据接口

    这篇文章主要介绍了如何使用java制作假数据接口,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-12-12
  • Spring集成Web环境的实例详解

    Spring集成Web环境的实例详解

    这篇文章主要介绍了Spring集成Web环境,本文通过实例图文相结合给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-02-02

最新评论