您的位置:首页 > 编程语言 > Java开发

【Swagger】出现java.lang.IndexOutOfBoundsException: Index: 1

2017-08-30 15:51 316 查看
公司项目中庸Swagger配置web应用的RESTFUL接口的文档,配置方式如下:

1. 在POM添加Swagger依赖包

<!-- swagger-mvc -->
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger2</artifactId>
<version>2.6.0</version>
</dependency>
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger-ui</artifactId>
<version>2.6.0</version>
</dependency>
<!-- swagger-mvc -->
2. 在Spring MVC配置文件添加

<bean class="springfox.documentation.swagger2.configuration.Swagger2DocumentationConfiguration" id="swagger2Config"/>
添加静态资源配置脚本

<mvc:resources location="classpath:/META-INF/resources/" mapping="swagger-ui.html"/>
<mvc:resources location="classpath:/META-INF/resources/webjars/" mapping="/webjars/**"/>

3. 重启web应用访问
http://{ip}:{port}/{project}/swagger-ui.html
结果出现了java.lang.IndexOutOfBoundsException:
Index: 1

问题原因在我门项目中使用到了net.sf.JSONObject作为Api的响应参数

java.lang.IndexOutOfBoundsException: Index: 1

at java.util.Collections$EmptyList.get(Collections.java:4454)

at springfox.documentation.swagger2.mappers.ModelMapper.typeOfValue(ModelMapper.java:109)

at springfox.documentation.swagger2.mappers.ModelMapper.mapProperties(ModelMapper.java:91)

at springfox.documentation.swagger2.mappers.ModelMapper.mapModels(ModelMapper.java:65)

at springfox.documentation.swagger2.mappers.ModelMapper.modelsFromApiListings(ModelMapper.java:190)

at springfox.documentation.swagger2.mappers.ServiceModelToSwagger2MapperImpl.mapDocumentation(ServiceModelToSwagger2MapperImpl.java:50)

at springfox.documentation.swagger2.web.Swagger2Controller.getDocumentation(Swagger2Controller.java:76)

通过Swagger2的官网【issues】https://github.com/springfox/springfox/issues/1129发现出现类似的问题

然后搜索Swagger2最新的版本代码发现已经修复该问题so解决办法

<!-- swagger-mvc -->
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger2</artifactId>
<version>2.7.0</version>
</dependency>
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger-ui</artifactId>
<version>2.7.0</version>
</dependency>
<!-- swagger-mvc -->
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  java web应用
相关文章推荐