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 e0f94fea192..62b8bda30c7 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 @@ -1734,6 +1734,8 @@ public abstract class AbstractJavaCodegen extends DefaultCodegen implements Code } else if ("BigDecimal".equals(datatype)) { // use BigDecimal String constructor return "new BigDecimal(\"" + value + "\")"; + } else if ("URI".equals(datatype)) { + return "URI.create(\"" + escapeText(value) + "\")"; } else { return "\"" + escapeText(value) + "\""; } diff --git a/modules/openapi-generator/src/test/java/org/openapitools/codegen/java/AbstractJavaCodegenTest.java b/modules/openapi-generator/src/test/java/org/openapitools/codegen/java/AbstractJavaCodegenTest.java index 56be46d46f6..31c97e6c65f 100644 --- a/modules/openapi-generator/src/test/java/org/openapitools/codegen/java/AbstractJavaCodegenTest.java +++ b/modules/openapi-generator/src/test/java/org/openapitools/codegen/java/AbstractJavaCodegenTest.java @@ -332,6 +332,7 @@ public class AbstractJavaCodegenTest { Assert.assertEquals(codegen.toEnumValue("42", "Double"), "42"); Assert.assertEquals(codegen.toEnumValue("1337", "Long"), "1337l"); Assert.assertEquals(codegen.toEnumValue("3.14", "Float"), "3.14f"); + Assert.assertEquals(codegen.toEnumValue("schema.json", "URI"), "URI.create(\"schema.json\")"); } @Test