OpenAPI Swagger不显示示例

时间:2019-06-10 19:13:42

标签: swagger openapi openapi-generator

我们在Spring Boot中使用OpenAPI和openapi-generator-maven-plugin。我们正在尝试在响应中创建一个示例对象。我们遵循了许多不同网页的建议,尤其是以下建议:

https://swagger.io/docs/specification/adding-examples/

但是无论我们尝试什么,我们要么无法显示示例数据,要么会给我们带来编译错误。

例如,根据我们已经看到的文档,这似乎就是我们应该使用的:

    patch:
      tags:
        - Color
      operationId: testing
      description: test
      responses:
        '200':
          description: Return existing colors in a season
          content:
            application/json:
              schema:
                type: object
                properties:
                  testName:
                    type: string
                example:
                  testname: amy

但这会在API的生成代码中导致编译错误:

ApiUtil.setExampleResponse(request, "application/json", "\"{\\"testname\\":\\"amy\\"}\"");

上面的代码中的转义字符太多,不应有两次转义。

这是我们POM中的插件配置:

<plugin>
    <groupId>org.openapitools</groupId>
    <artifactId>openapi-generator-maven-plugin</artifactId>
    <version>4.0.0</version>
    <executions>
        <execution>
            <id>FlexPLM-ACL</id>
            <goals>
                <goal>generate</goal>
            </goals>
            <configuration>
                <inputSpec>${project.basedir}/apis/flexplm-acl.yml</inputSpec>
                <generatorName>spring</generatorName>
                <apiPackage>com.dcsg.pdcomm.flexplmacl.api</apiPackage>
                <!-- Both of these APIs use the exact same DTOs, so we have put them into the same package -->
                <modelPackage>com.dcsg.pdcomm.flexplm.dto</modelPackage>
                <modelNameSuffix>DTO</modelNameSuffix>
                <supportingFilesToGenerate>ApiUtil.java</supportingFilesToGenerate>
                <configOptions>
                    <library>spring-boot</library>
                    <dateLibrary>java8</dateLibrary>
                    <java8>true</java8>
                    <interfaceOnly>true</interfaceOnly>
                </configOptions>
                <output>${project.build.directory}/generated-sources</output>
            </configuration>
        </execution>
    </executions>
</plugin>

我们尝试了所有不同的引号和缩进组合,但无济于事。请帮助我们!

0 个答案:

没有答案