|
48 | 48 | import io.swagger.v3.oas.annotations.enums.ParameterStyle;
|
49 | 49 | import io.swagger.v3.oas.annotations.extensions.Extension;
|
50 | 50 | import io.swagger.v3.oas.annotations.media.ExampleObject;
|
| 51 | +import io.swagger.v3.oas.annotations.media.Schema.RequiredMode; |
51 | 52 | import io.swagger.v3.oas.models.Components;
|
52 | 53 | import io.swagger.v3.oas.models.examples.Example;
|
53 | 54 | import io.swagger.v3.oas.models.media.ArraySchema;
|
@@ -334,7 +335,7 @@ private void setSchema(io.swagger.v3.oas.annotations.Parameter parameterDoc, Com
|
334 | 335 | catch (Exception e) {
|
335 | 336 | LOGGER.warn(Constants.GRACEFUL_EXCEPTION_OCCURRED, e);
|
336 | 337 | }
|
337 |
| - if (schema == null) { |
| 338 | + if (schema == null && parameterDoc.array() != null) { |
338 | 339 | schema = AnnotationsUtils.getSchema(parameterDoc.schema(), parameterDoc.array(), true, parameterDoc.array().schema().implementation(), components, jsonView).orElse(null);
|
339 | 340 | // default value not set by swagger-core for array !
|
340 | 341 | if (schema != null) {
|
@@ -366,7 +367,7 @@ Schema calculateSchema(Components components, ParameterInfo parameterInfo, Reque
|
366 | 367 | WebConversionServiceProvider webConversionServiceProvider = optionalWebConversionServiceProvider.get();
|
367 | 368 | if (!MethodParameterPojoExtractor.isSwaggerPrimitiveType((Class) type) && methodParameter.getParameterType().getAnnotation(io.swagger.v3.oas.annotations.media.Schema.class) == null) {
|
368 | 369 | Class<?> springConvertedType = webConversionServiceProvider.getSpringConvertedType(methodParameter.getParameterType());
|
369 |
| - if (!(String.class.equals(springConvertedType) && ((Class<?>) type).isEnum()) && requestBodyInfo==null) |
| 370 | + if (!(String.class.equals(springConvertedType) && ((Class<?>) type).isEnum()) && requestBodyInfo == null) |
370 | 371 | type = springConvertedType;
|
371 | 372 | }
|
372 | 373 | }
|
@@ -626,7 +627,9 @@ public String description() {
|
626 | 627 |
|
627 | 628 | @Override
|
628 | 629 | public boolean required() {
|
629 |
| - return schema.required(); |
| 630 | + return schema.requiredMode().equals(RequiredMode.AUTO) ? |
| 631 | + schema.required() : |
| 632 | + schema.requiredMode().equals(RequiredMode.REQUIRED); |
630 | 633 | }
|
631 | 634 |
|
632 | 635 | @Override
|
|
0 commit comments