Kul*_*ain 9 maven-plugin swagger swagger-codegen
我在yaml文件中标记了这些字段(swagger规范)
MyType:
type: object
required:
- name
- amount
Run Code Online (Sandbox Code Playgroud)
我正在使用带有这些配置的swagger codegen maven插件:
<artifactId>swagger-codegen-maven-plugin</artifactId>
<version>2.2.3</version>
<language>spring</language>
<library>spring-mvc</library>
Run Code Online (Sandbox Code Playgroud)
我希望在生成的类中也需要规范中的必填字段.但目前还没有发生这种情况.
有没有配置选项可以做到这一点?我有,<useBeanValidation>true</useBeanValidation>但这似乎对我不起作用.
我在Swagger-codegen GitHub页面上的Definitions中看到了一个类似的请求执行"必需"字段,其中建议是使用的useBeanValidation,我确实拥有它,但它仍然无效.
在Swagger-codegen GitHub页面上创建了此请求:Swagger-codegen强制生成的模型类中的"required"字段
找到了解决方案。这实际上是我的错误;我期望生成的类中的字段被标记为必填。相反,它是带有注释并解决目的的getter方法。现在,验证到位后,我可以看到验证被触发,并在请求负载中未传递金额时显示消息。@NonNullrequired = trueAmount should be present
@ApiModelProperty(required = true, value = "Amount should be present")
@NotNull
public Amount getAmount() {
return amount;
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1187 次 |
| 最近记录: |