有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java OpenApi(Swagger 3.0)Codegen缺少验证

我对openapi maven codegen插件有一个基本问题。 java生成的代码中缺少Validations注释(maxLength,pattern)

这是我的pom:

   <dependencies>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
    </dependency>

    <dependency>
        <groupId>io.swagger.core.v3</groupId>
        <artifactId>swagger-annotations</artifactId>
        <version>2.0.9</version>
    </dependency

</dependencies>
<build>
    <plugins>
        <plugin>
            <groupId>io.swagger.codegen.v3</groupId>
            <artifactId>swagger-codegen-maven-plugin</artifactId>
            <version>3.0.11</version>
            <executions>
                <execution>
                    <goals>
                        <goal>generate</goal>
                    </goals>
                    <configuration>
                        <inputSpec>${project.basedir}/src/main/resources/customer-service-api.yaml</inputSpec>
                        <output>${project.build.directory}/generated-sources</output>
                        <modelPackage>${default.package}.customer.model</modelPackage>
                        <generateModels>true</generateModels>
                        <generateApis>false</generateApis>
                        <generateApiTests>false</generateApiTests>
                        <generateSupportingFiles>false</generateSupportingFiles>
                        <language>java</language>
                        <library>resttemplate</library>
                    </configuration>
                </execution>
            </executions>
        </plugin>
    </plugins>
</build>

这是我的骄傲:

name:
  type: object
  properties:
    firstName:
      type: string
      pattern: "^[A-Z]{1,50}$"
      maxLength: 50

现在生成的java文件是:

public class Name {
  @JsonProperty("firstName")
  private String firstName = null;

  @JsonProperty("middleName")
  private String middleName = null;

  @JsonProperty("lastName")
  private String lastName = null;

我希望在属性上有规律的表达。因此,我将能够通过java验证器验证我的java对象

它可以在RAML及其生成的java代码中工作,并且想知道为什么它不在我的swagger代码中

谢谢


共 (0) 个答案