From aaafd0632cc90d4ff348b34a271c4f9a788dbb3b Mon Sep 17 00:00:00 2001 From: xhh Date: Tue, 10 Nov 2015 12:04:29 +0800 Subject: [PATCH] Fix error with array of enum in Java client ref: https://github.com/swagger-api/swagger-codegen/pull/1457#issuecomment-155185530 --- .../io/swagger/codegen/languages/JavaClientCodegen.java | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/modules/swagger-codegen/src/main/java/io/swagger/codegen/languages/JavaClientCodegen.java b/modules/swagger-codegen/src/main/java/io/swagger/codegen/languages/JavaClientCodegen.java index 4e6f1b9910a..31b963cf142 100644 --- a/modules/swagger-codegen/src/main/java/io/swagger/codegen/languages/JavaClientCodegen.java +++ b/modules/swagger-codegen/src/main/java/io/swagger/codegen/languages/JavaClientCodegen.java @@ -496,7 +496,7 @@ public class JavaClientCodegen extends DefaultCodegen implements CodegenConfig { } allowableValues.put("enumVars", enumVars); // handle default value for enum, e.g. available => StatusEnum.AVAILABLE - if (var.defaultValue != null && !"null".equals(var.defaultValue)) { + if (var.defaultValue != null) { String enumName = null; for (Map enumVar : enumVars) { if (var.defaultValue.equals(enumVar.get("value"))) { @@ -504,10 +504,9 @@ public class JavaClientCodegen extends DefaultCodegen implements CodegenConfig { break; } } - if (enumName == null) { - throw new RuntimeException("default value of property \"" + var.baseName + "\" is not in allowed values: " + var.defaultValue); + if (enumName != null) { + var.defaultValue = var.datatypeWithEnum + "." + enumName; } - var.defaultValue = var.datatypeWithEnum + "." + enumName; } } }