访问swagger文档报错Illegal DefaultValue 1024 for parameter type integer,java.lang.NumberFormatException

访问swagger文档报错Illegal DefaultValue 1024 for parameter type integer,java.lang.NumberFormatException,第1张

访问swagger文档报错Illegal DefaultValue 1024 for parameter type integer,java.lang.NumberFormatException 后台报错问题日志
2021-12-30 15:41:24.675  WARN [nio-9008-exec-1] [] i.s.m.p.AbstractSerializableParameter    [421] : Illegal DefaultValue 1024 for parameter type integer

java.lang.NumberFormatException: For input string: ""
	at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
	at java.lang.Long.parseLong(Long.java:601)
	at java.lang.Long.valueOf(Long.java:803)
	at io.swagger.models.parameters.AbstractSerializableParameter.getExample(AbstractSerializableParameter.java:412)
	at sun.reflect.GeneratedMethodAccessor149.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at com.fasterxml.jackson.databind.ser.BeanPropertyWriter.serializeAsField(BeanPropertyWriter.java:689)
	at com.fasterxml.jackson.databind.ser.std.BeanSerializerbase.serializeFields(BeanSerializerbase.java:755)
问题排查

在AbstractSerializableParameter.getExample(AbstractSerializableParameter.java:412)打断点调试,可以发现代码执行到此处example的值为空字符串,执行Long.valueOf(this.example)会抛出’java.lang.NumberFormatException’ 异常。

解决办法
  1. 修改源码
  • 下载源码下来把if (this.example == null) 判定改成 if (this.example == null || example.isEmpty())
  1. 调整依赖(推荐)
  • 把swagger2的swagger-models排除,添加版本为1.5.21的swagger-models
        
            io.swagger
            swagger-models
            1.5.21
        

        
            io.springfox
            springfox-swagger2
            2.10.5
            compile
            
                
                    io.swagger
                    swagger-models
                
            
        

调整后可以看到新的版本修改了这个判定逻辑。

上述一波 *** 作后,访问swagger文档地址不再报错。

呜啦啦啦啦 看官喜欢的话点赞收藏或者关注一下吧

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/5686323.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-17
下一篇 2022-12-17

发表评论

登录后才能评论

评论列表(0条)

保存