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)就不會有這個問題了


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM