Swagger与使用Generic类型的Dropwizard API

时间:2014-05-28 15:50:10

标签: swagger dropwizard generic-type-argument

我的Dropwizard API中有一个通用响应对象,它是一个包含状态枚举和值的包装器。 API操作有响应或响应等响应。

我一直试图找到一种方法来处理这个问题并看到一些人提到这是为Spring Rest / Swagger处理的?

我正在使用:                      com.wordnik             招摇,jaxrs_2.10             1.3.5          

有没有人以一种很好的通用方式解决这个问题?

2 个答案:

答案 0 :(得分:1)

我想你可能正在寻找这样的东西:

@GET
@Path("/pets")
@ApiOperation(value = "Get all pets.", response = Pet.class)
public Response<List<Pet>> getPets() {
  ...
}

答案 1 :(得分:0)

当我正在为同一问题寻找解决方案时,遇到了这个老问题。 这是我的解决方法:

  1. 创建一个包装类:

    @ApiModel
    public class PetListResponse extends Response<List<Pet>> {
    
        @Override
        @ApiModelProperty
        public List<Pet> getValue() {
            return super.getValue()
        }
    }
    
  2. 覆盖API中的响应:

    @GET
    @Path("/pets")
    @ApiOperation(value = "Get all pets.", response = PetListResponse.class)
    public Response<List<Pet>> getPets() {
     ...
    }
    
  3. 成功:)