From 8cde232efc8624d83734b88f020ca5a27407945a Mon Sep 17 00:00:00 2001 From: ibenchhida Date: Mon, 6 Oct 2025 16:29:15 +0100 Subject: [PATCH] Fix NullPointerException when generating java code Descriminator Object --- .../v3/generators/DefaultCodegenConfig.java | 22 +++++++++++-------- 1 file changed, 13 insertions(+), 9 deletions(-) diff --git a/src/main/java/io/swagger/codegen/v3/generators/DefaultCodegenConfig.java b/src/main/java/io/swagger/codegen/v3/generators/DefaultCodegenConfig.java index 47aa5adc0e..7264c2f98c 100644 --- a/src/main/java/io/swagger/codegen/v3/generators/DefaultCodegenConfig.java +++ b/src/main/java/io/swagger/codegen/v3/generators/DefaultCodegenConfig.java @@ -1399,16 +1399,20 @@ else if (schema instanceof ComposedSchema) { if (composed.getOneOf()!=null) { composed.getOneOf().forEach( s -> { - codegenModel.discriminator.getMapping().keySet().stream().filter( key -> codegenModel.discriminator.getMapping().get(key).equals(s.get$ref())) - .forEach(key -> { - String mappingValue = codegenModel.discriminator.getMapping().get(key); - if (classnameKeys.containsKey(codegenModel.classname)) { - throw new IllegalArgumentException("Duplicate shema name in discriminator mapping"); - } - classnameKeys.put(toModelName(mappingValue.replace("#/components/schemas/", "")),key); - }); + if(codegenModel.discriminator.getMapping() != null){ + codegenModel.discriminator.getMapping().keySet().stream().filter( key -> codegenModel.discriminator.getMapping().get(key).equals(s.get$ref())) + .forEach(key -> { + String mappingValue = codegenModel.discriminator.getMapping().get(key); + if (classnameKeys.containsKey(codegenModel.classname)) { + throw new IllegalArgumentException("Duplicate shema name in discriminator mapping"); + } + classnameKeys.put(toModelName(mappingValue.replace("#/components/schemas/", "")),key); + }); + codegenModel.discriminator.getMapping().putAll(classnameKeys); + + } + }); - codegenModel.discriminator.getMapping().putAll(classnameKeys); } }