diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/DefaultCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/DefaultCodegen.java index a56134e5070..875bcf8f1d9 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/DefaultCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/DefaultCodegen.java @@ -1841,7 +1841,7 @@ public class DefaultCodegen implements CodegenConfig { .map(s -> ModelUtils.getSimpleRef(s.get$ref())) .collect(Collectors.toSet()); if (parentSchemas.contains(schemaName)) { - discriminator.getMappedModels().add(new MappedModel(childName, childName)); + discriminator.getMappedModels().add(new MappedModel(childName, toModelName(childName))); } } }); @@ -1864,18 +1864,21 @@ public class DefaultCodegen implements CodegenConfig { protected void addProperties(Map properties, List required, Schema schema, Map allSchemas) { if (schema instanceof ComposedSchema) { - throw new RuntimeException("Please report the issue: Cannot process Composed Schema in addProperties: " + schema); - /* ComposedSchema composedSchema = (ComposedSchema) schema; - if (composedSchema.getAllOf() == null) { - return; - } for (Schema component : composedSchema.getAllOf()) { addProperties(properties, required, component, allSchemas); } + + if (composedSchema.getOneOf() != null) { + throw new RuntimeException("Please report the issue: Cannot process oneOf (Composed Scheme) in addProperties: " + schema); + } + + if (composedSchema.getAnyOf() != null) { + throw new RuntimeException("Please report the issue: Cannot process anyOf (Composed Schema) in addProperties: " + schema); + } + return; - */ } Schema unaliasSchema = ModelUtils.unaliasSchema(globalSchemas, schema); diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractJavaCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractJavaCodegen.java index cdf0120dd1a..7d20b31e8ff 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractJavaCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractJavaCodegen.java @@ -117,6 +117,8 @@ public abstract class AbstractJavaCodegen extends DefaultCodegen implements Code setReservedWordsLowerCase( Arrays.asList( + // special words + "object", // used as internal variables, can collide with parameter names "localVarPath", "localVarQueryParams", "localVarCollectionQueryParams", "localVarHeaderParams", "localVarFormParams", "localVarPostBody",