Java web项目集成Swagger报AbstractSerializableParameter类的异常问题
Posted 滴水穿石
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java web项目集成Swagger报AbstractSerializableParameter类的异常问题相关的知识,希望对你有一定的参考价值。
Java web项目集成Swagger报AbstractSerializableParameter类的异常问题
异常信息大致如下:
[nio-1111-exec-4] i.s.m.p.AbstractSerializableParameter : Illegal DefaultValue null for parameter type integer
java.lang.NumberFormatException: For input string: ""
at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65) ~[na:1.8.0_171]
原因
- Swagger每一个@ApiModelProperty注解里example属性都会进行非空判断.但是,它在判断的语句里只判断了null的情况,没有判断是空字符串的情况,所以解析数字的时候就会报这个异常。
- swagger-models 默认是1.5.20,这个版本是没有解决上面这个问题;而在较新的版本1.5.22是解决了这个问题。
解决
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger2</artifactId>
<version>2.9.2</version>
<exclusions>
<exclusion>
<groupId>io.swagger</groupId>
<artifactId>swagger-models</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>io.swagger</groupId>
<artifactId>swagger-models</artifactId>
<version>1.5.22</version>
</dependency>
PS:引用了新版本的swagger-models包(1.5.22)就不会有这个问题了
以上是关于Java web项目集成Swagger报AbstractSerializableParameter类的异常问题的主要内容,如果未能解决你的问题,请参考以下文章
Java高并发秒杀系统API之SSM框架集成swagger与AdminLTE
我爱java系列之---springboot项目集成swagger2