Swagger生成的模型没有验证

问题描述

我们在应用程序中使用了Camel,所以最初我认为这与Camel插件有关,但是这是我在Java和OAS版本中测试过的内容:

  • camel-restdsl-swagger-plugin(Java 8,Java 11,OAS v2.0)
  • camel-restdsl-openapi-plugin(Java 11,OAS v3.0)
  • swagger-codegen-maven-plugin(Java 11,OAS v3.0)
  • Swagger编辑器演示(OAS v2.0,OAS v3.0,生成Java客户端)
  • swagger-codegen-maven-plugin示例(Java 11,OAS v2.0)

我们现在正在针对Java 11进行构建,但是在先前的版本中,我们使用了Java8。我们已经对OAS v2.0进行了测试,现在已经升级到OAS v3.0。

基于这个Github问题,这些尝试都没有成功,即使看起来应该有效果,也暗示着验证适用于Java:https://github.com/swagger-api/swagger-codegen/issues/2663

在最后两个测试中,我向各种属性添加了一个最大值和模式,构建了项目或生成了Java客户端,并在其中一个模型(用于剪裁的Order.java)中看到了这一点:{{ 3}}。

同一问题反映在我们的代码中,我们的规范基于Swagger编辑器有效。我只是将规范放到了编辑器中。

如何显示验证?我无法粘贴整个规格,但这是我们其中一个模型的编辑部分。这些验证均未在代码中强制执行。最大值和最小值显示在注释中,并且从未提及该模式。

AnExample:
      description: >
        The cow goes moo
      type: object
      properties:
        id:
          description: >
            Uniquely identify the cow
          type: string
          pattern: "[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-5][0-9a-fA-F]{3}-[0-9a-dA-D][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000"
        height:
          description: >
            How tall the cow is,counted in beagles
          type: number
          format: int64
          minimum: 1
          maximum: 60

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...