diff --git a/modules/openapi-generator/src/main/resources/JavaSpring/nullableDatatypeWithEnum.mustache b/modules/openapi-generator/src/main/resources/JavaSpring/nullableDatatypeWithEnum.mustache new file mode 100644 index 000000000000..8fbd3969b872 --- /dev/null +++ b/modules/openapi-generator/src/main/resources/JavaSpring/nullableDatatypeWithEnum.mustache @@ -0,0 +1 @@ +{{#lambda.jSpecifyDatatype}}{{{datatypeWithEnum}}}{{/lambda.jSpecifyDatatype}} \ No newline at end of file diff --git a/modules/openapi-generator/src/main/resources/JavaSpring/pojo.mustache b/modules/openapi-generator/src/main/resources/JavaSpring/pojo.mustache index 6dd2e6da00d2..5606c3ba9859 100644 --- a/modules/openapi-generator/src/main/resources/JavaSpring/pojo.mustache +++ b/modules/openapi-generator/src/main/resources/JavaSpring/pojo.mustache @@ -134,7 +134,7 @@ public {{>sealed}}class {{classname}}{{#parent}} extends {{{parent}}}{{/parent}} /** * Constructor with all args parameters */ - public {{classname}}({{#vendorExtensions.x-java-all-args-constructor-vars}}{{>nullableAnnotation}}{{{datatypeWithEnum}}} {{name}}{{^-last}}, {{/-last}}{{/vendorExtensions.x-java-all-args-constructor-vars}}) { + public {{classname}}({{#vendorExtensions.x-java-all-args-constructor-vars}}{{>nullableAnnotation}}{{>nullableDatatypeWithEnum}} {{name}}{{^-last}}, {{/-last}}{{/vendorExtensions.x-java-all-args-constructor-vars}}) { {{#parent}} super({{#parentVars}}{{name}}{{^-last}}, {{/-last}}{{/parentVars}}); {{/parent}} @@ -153,7 +153,7 @@ public {{>sealed}}class {{classname}}{{#parent}} extends {{{parent}}}{{/parent}} {{^lombok.Data}} {{! begin feature: fluent setter methods }} - public {{classname}} {{name}}({{>nullableAnnotation}}{{{datatypeWithEnum}}} {{name}}) { + public {{classname}} {{name}}({{>nullableAnnotation}}{{>nullableDatatypeWithEnum}} {{name}}) { {{#openApiNullable}} this.{{name}} = {{#isNullable}}JsonNullable.of({{/isNullable}}{{#useOptional}}{{^required}}{{^isNullable}}{{^isContainer}}Optional.of{{#optionalAcceptNullable}}Nullable{{/optionalAcceptNullable}}({{/isContainer}}{{/isNullable}}{{/required}}{{/useOptional}}{{name}}{{#isNullable}}){{/isNullable}}{{#useOptional}}{{^required}}{{^isNullable}}{{^isContainer}}){{/isContainer}}{{/isNullable}}{{/required}}{{/useOptional}}; {{/openApiNullable}} diff --git a/samples/openapi3/server/petstore/springboot-4-jspecify/src/main/java/org/openapitools/model/Foo.java b/samples/openapi3/server/petstore/springboot-4-jspecify/src/main/java/org/openapitools/model/Foo.java index cc8b5f4e0098..a46b9bf7e20e 100644 --- a/samples/openapi3/server/petstore/springboot-4-jspecify/src/main/java/org/openapitools/model/Foo.java +++ b/samples/openapi3/server/petstore/springboot-4-jspecify/src/main/java/org/openapitools/model/Foo.java @@ -70,7 +70,7 @@ public Foo(OffsetDateTime requiredDt) { /** * Constructor with all args parameters */ - public Foo(OffsetDateTime dt, org.springframework.core.io.Resource binary, List listOfDt, List listMinIntems, OffsetDateTime requiredDt, BigDecimal number) { + public Foo(@Nullable OffsetDateTime dt, org.springframework.core.io.@Nullable Resource binary, List listOfDt, List listMinIntems, OffsetDateTime requiredDt, @Nullable BigDecimal number) { this.dt = dt; this.binary = binary; this.listOfDt = listOfDt; @@ -79,7 +79,7 @@ public Foo(OffsetDateTime dt, org.springframework.core.io.Resource binary, List< this.number = number; } - public Foo dt(OffsetDateTime dt) { + public Foo dt(@Nullable OffsetDateTime dt) { this.dt = dt; return this; } @@ -104,7 +104,7 @@ public void setDt(@Nullable OffsetDateTime dt) { this.dt = dt; } - public Foo binary(org.springframework.core.io.Resource binary) { + public Foo binary(org.springframework.core.io.@Nullable Resource binary) { this.binary = binary; return this; } @@ -223,7 +223,7 @@ public void setRequiredDt(OffsetDateTime requiredDt) { this.requiredDt = requiredDt; } - public Foo number(BigDecimal number) { + public Foo number(@Nullable BigDecimal number) { this.number = number; return this; }