Swagger 注释不适用于 enunciate

问题描述 投票:0回答:1

我有一个 rest API,我部署它以使用 enunciate 招摇的 Ui。但是我在使用swagger注解在swagger Ui上添加注释时遇到了一些问题。有一些注解在 Ui 上不起作用(@ApiModelProperty),还有一些可以正常工作(@ApiOperation)。

这是我的源代码中的一个例子

pom.xml

<plugin>
        <groupId>com.webcohesion.enunciate</groupId>
        <artifactId>enunciate-maven-plugin</artifactId>
        <version>2.14.0</version>
         <executions>
          <execution>
            <goals>
              <goal>assemble</goal>
            </goals>
          </execution>
        </executions> 
      </plugin>
.....
<dependency>
        <groupId>com.webcohesion.enunciate</groupId>
        <artifactId>enunciate-core-annotations</artifactId>
        <version>2.14.0</version>
      </dependency>
      <dependency>
          <groupId>com.webcohesion.enunciate</groupId>
          <artifactId>enunciate-rt-util</artifactId>
          <version>2.14.0</version>
      </dependency>
       <dependency>
            <groupId>org.jboss.resteasy</groupId>
            <artifactId>resteasy-jaxrs</artifactId>
            <version>2.3.7.Final</version>
    </dependency>
        <dependency>
            <groupId>io.swagger</groupId>
            <artifactId>swagger-annotations</artifactId>
            <version>1.6.9</version>
        </dependency>

用户类(我使用 @ApiModelProperty 和 @apimodel 不起作用)

ApiModel(description = "User Model")
public class User {
    @ApiModelProperty(value = "user's age", required = true) 
    private String age;
    @ApiModelProperty(value = "user numero", example = "0000", required = true) 
    private String numero;
UserRessource.class my web service . ApiOperation works but ApiParam doesn't work
@ApiOperation(value = "Gets users by Numero", notes = "user must exist")
    @GET
    @Path("/agences/{numero}")
    public Response getUserByNumero(@ApiParam(value = "User numero", example = "5152", required = true) @PathParam("usernUMERO")  String numero) throws Throwable {
            if (StringUtils.isBlank(numero)) {
                return toResponse(ErrorMessages.ERROR_MISS_AGENCE_NUM);
            }
            return getUserByNumero(numero);
    }

是否有可能某些 swagger 注释不适用于 enunciate 2.14 和其他注释工作?

java swagger swagger-ui resteasy enunciate
1个回答
0
投票

在您的示例中,Enunciate 2.14 可能不支持 @ApiModelProperty 注释,或者它需要额外的配置才能正常运行。也有可能是您使用的 Swagger 注解库版本不支持 @ApiParam 注解。

© www.soinside.com 2019 - 2024. All rights reserved.