当前位置: 首页 > 知识库问答 >
问题:

openapi生成器maven插件为具有以下引用的属性创建JsonNullable:#

闾丘山
2023-03-14

我已经创建了我的。yml(减少):

openapi: 3.0.1
...
components:
  messages:
  ...
  schemas:
    device:
      type: object
      properties:
        identifier:
          type: string
        manufacturer:
          type: string
        model:
          type: string
    controllerId:
      type: number
    controller:
      type: object
      properties:
        controllerId:
          ref: '#/components/schemas/controllerId'
        device:
          ref: '#/components/schemas/device'

我让生成Vertx的java类

<groupId>org.openapitools</groupId>
<artifactId>openapi-generator-maven-plugin</artifactId>
<version>5.3.0</version>

类型为的属性按预期生成,但所有引用为的属性均按JsonNullable生成

我复制了生成的类并修复了泛型,以便映射器将值读取到预期的类。你知道怎么写这个吗。生成器创建的yml

共有1个答案

管梓
2023-03-14

阅读规格...我不得不将ref:更改为$ref,然后生成正确的成员类型。

 类似资料:
  • 我试图在使用openapi 3规范设计的API中引入可为null的属性。其思想是始终将属性返回给客户端,无论其值是否为null。 YAML文件(我先尝试了,没有默认,结果相同): 生成Java代码: API的响应: 因此,无论属性是否为null,结果总是“present:true”。如果没有nullability,它就可以正常工作,除了从响应中删除不需要的null值。 有什么想法吗? P、 该物业

  • 我目前正在使用openapi生成器maven插件生成一个模型,但当该模型创建BigDecimal属性时,它没有添加正确的导入。例如: 当我手动添加导入时,模型编译成功,但我认为它会生成。 我尝试在配置部分添加导入映射,如下所示: 正如这里所建议的那样。 还尝试了以下方法: 但行为是一样的。 我正在使用openapi生成器版本5.0.0。我目前的配置是这样的:

  • 我试图学习数组对象在Java但不明白。我确实明白如何将输入存储到数组对象中,但不明白如何比较数组中的每个项来做#7和#8。我试图在网上搜索,但从那里卡住了。 > 创建具有以下属性的班级学生:姓名、年龄、地址、电子邮件地址 创建一个空构造函数,用于初始化所有属性的空值。 创建一个接受所有参数并初始化所有属性的构造函数。 为所有属性创建访问器和变异器方法。 创建一个toString方法以返回学生的详细

  • 我在openapi v.3规范中有一个模型。我使用openapi生成器maven插件为库webclient(spring 5-webflux)生成java客户端。我想发送回客户端文件和http头。生成的代码没有获取响应标头的方法。 为客户端生成的代码不包含提供对响应头访问的代码。例如,如果我使用库resttemplate,则有一个方法public MultiValueMap getResponse

  • 我只是将代码从swagger代码生成器迁移到open api代码生成器。我通过maven插件使用生成器。我需要它为一个外部API(在我的控制之外)生成一个客户端,这里给出了使用的swagger文件。 我的插件设置如下: 为了有一个最小的例子,我把昂首阔步的来源去掉了: 当生成器运行正常时,代码无效 结果列表«GenericRow»完全错误。 另一方面,类的名称是正确生成的只有变量名称处理错误。 如

  • 不幸的是,SpringFox还不支持OpenAPI3,而且,当我只想将最初的yaml公开为JSON时,使用基于反射的生成器似乎毫无意义。