欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

swagger 填坑记录

程序员文章站 2022-06-26 13:23:03
...

启动失败:NullPointerException

原因主要是swagger旧版本的bug与,解决方案:
swagger升级到2.5.0+
参考:
https://github.com/spring-cloud/spring-cloud-consul/issues/121
https://segmentfault.com/a/1190000006595187
http://blog.csdn.net/caidchen/article/details/73949624

Caused by: java.lang.NullPointerException: null
    at springfox.documentation.schema.property.OptimizedModelPropertiesProvider.beanDescription(OptimizedModelPropertiesProvider.java:317) ~[springfox-schema-2.2.2.jar:2.2.2]
    at springfox.documentation.schema.property.OptimizedModelPropertiesProvider.propertiesFor(OptimizedModelPropertiesProvider.java:117) ~[springfox-schema-2.2.2.jar:2.2.2]
    at  ....

部署生产环境访问异常:NumberFormatException: For input string: "80,80":

2017/9/14 下午2:44:36java.lang.NumberFormatException: For input string: "80,80"
2017/9/14 下午2:44:36 at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
2017/9/14 下午2:44:36 at java.lang.Integer.parseInt(Integer.java:580)
2017/9/14 下午2:44:36 at java.lang.Integer.parseInt(Integer.java:615)
2017/9/14 下午2:44:36 at springfox.documentation.swagger2.web.HostNameProvider.componentsFrom(HostNameProvider.java:72)
2017/9/14 下午2:44:36 at springfox.documentation.swagger2.web.Swagger2Controller.getDocumentation(Swagger2Controller.java:84)

检查代码是,2.5.0引入的HostNameProvider.class中如下代码引起:

 String port = request.getHeader("X-Forwarded-Port");

    if (hasText(port)) {
      builder.port(Integer.parseInt(port));
    }

解决方案:升级到2.7.0版本

升级2.7.0后访问,页面无数据

原因:前端控制台报js错误;
解决方案:ctrl+f5清空下浏览器缓存,重新访问