swagger-jaxrs @ApiModelProperty AllowableValues 是否适用于 "range[x,y]"?

Does swagger-jaxrs @ApiModelProperty AllowableValues work with "range[x,y]"?

我无法得到以下结果:

@ApiModelProperty(allowableValues = "range[0,8]", required = true)
private String myfield;

这个有效:

@ApiModelProperty(allowableValues = "Email, Post", required = true)
private String multiValField;

并产生(在 UI 中):

multiValField(string) = ['Email' or ' Post']

我可能误读了文档,这是来自 javaApiModelProperty 中的文档:

To set a range of values, start the value with "range", and surrounding by square brackets include the minimum and maximum values. For example: range[1, 5]. To set a minimum/maximum value, use the same format for range but use "infinity" or "-infinity" as the second value. For example, range[1, infinity] means the minimum allowable value of this parameter is 1.

我找不到任何人这样做的例子,尽管这似乎很常见。我确实在 modules/swagger-jaxrs/src/test/scala/testresources/ResourceWithReturnTypes.java 中找到了它,这是一个 @ApiParam,但我无法在我的 GET 端点上让它工作。

@ApiParam(value = "sample param data", required = true, 
allowableValues = "range[0,10]")
@DefaultValue("1") @QueryParam("id") String id) {

有人有这个工作的某个版本吗?

swagger-core 项目中包含一组样本。 range 的用法在 @ApiParam@ApiModelProperty 中都有体现。

这里可以看到@ApiModelProperty - https://github.com/swagger-api/swagger-core/blob/master/samples/scala-oauth-authorization-server/src/main/scala/com/wordnik/swagger/sample/model/Pet.scala#L30.

这里可以看到@ApiParam - https://github.com/swagger-api/swagger-core/blob/master/samples/java-jaxrs/src/main/java/com/wordnik/swagger/sample/resource/PetStoreResource.java#L42.

所有示例都包含有关如何在本地 运行 它们的简单详细信息,并且它们按预期输出 minimummaximum 值。