Skip to content

Commit cea5992

Browse files
committed
Fix discriminator annotations on pojo.qute
Signed-off-by: Ricardo Zanini <[email protected]>
1 parent ed20471 commit cea5992

File tree

1 file changed

+8
-3
lines changed
  • client/deployment/src/main/resources/templates/libraries/microprofile

1 file changed

+8
-3
lines changed

client/deployment/src/main/resources/templates/libraries/microprofile/pojo.qute

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,15 +6,20 @@ import com.fasterxml.jackson.annotation.JsonProperty;
66
* {m.description}
77
**/
88
{/if}
9-
@com.fasterxml.jackson.annotation.JsonIgnoreProperties(ignoreUnknown = true)
109
{#include additionalModelTypeAnnotations.qute m=m/}
1110
{#if m.discriminator && m.discriminator.mappedModels && !m.discriminator.mappedModels.empty}
12-
@com.fasterxml.jackson.annotation.JsonTypeInfo(use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.EXISTING_PROPERTY, property = "{m.discriminator.propertyBaseName}")
11+
@com.fasterxml.jackson.annotation.JsonIgnoreProperties(
12+
value = "{m.discriminator.propertyBaseName}", // ignore manually set {m.discriminator.propertyBaseName}, it will be automatically generated by Jackson during serialization
13+
allowSetters = true // allows the {m.discriminator.propertyBaseName} to be set during deserialization
14+
)
15+
@com.fasterxml.jackson.annotation.JsonTypeInfo(use = com.fasterxml.jackson.annotation.JsonTypeInfo.Id.NAME, include = com.fasterxml.jackson.annotation.JsonTypeInfo.As.PROPERTY, property = "{m.discriminator.propertyBaseName}", visible = true)
1316
@com.fasterxml.jackson.annotation.JsonSubTypes({
1417
{#for child in m.discriminator.mappedModels}
15-
@com.fasterxml.jackson.annotation.JsonSubTypes.Type(value = {child.model.classname}.class, name = "{child.mappingName}"),
18+
@com.fasterxml.jackson.annotation.JsonSubTypes.Type(value = {package}.{child.modelName}.class, name = "{#if m.vendorExtensions.x-discriminator-value.or('') == ''}{child.mappingName}{#else}{m.vendorExtensions.x-discriminator-value}{/if}"),
1619
{/for}
1720
})
21+
{#else}
22+
@com.fasterxml.jackson.annotation.JsonIgnoreProperties(ignoreUnknown = true)
1823
{/if}
1924
public class {m.classname} {#if m.parent}extends {m.parent}{/if}{#if serializableModel} implements java.io.Serializable{/if} {
2025

0 commit comments

Comments
 (0)