],
The above is a serialized HashSet using the As.Property typing on the ObjectMapper. I believe this is correct behavior because these enums are in the Set and this is what As.Property does in this situation.
The problem I'm having is that the same ObjectMapper that wrote that JSON can't deserialize it.
com.fasterxml.jackson.databind.exc.InvalidFormatException: Cannot deserialize value of type `com.company.core.TestType` from String "com.company.core.TestType": not one of the values accepted for Enum class: [SCREENING_1, SCREENING_2, SCREENING_3]
at [Source: (byte[])"["java.util.ArrayList",[{"@class":"com.company.ContainerType","id":1,"testTypes":["java.util.HashSet",[["company.core.TestType","SCREENING_1"],["company.core.TestType","SCREENING_2"],["company.core.TestType","SCREENING_3"]]],"shipDestinationTypes":["java.util.HashSet",[["com.company.mod"[truncated 19402 bytes]; line: 1, column: 229] (through reference chain: java.util.ArrayList[0]->com.company.ContainerType["testTypes"]->java.util.HashSet[0])
com.fasterxml.jackson.databind.exc.InvalidFormatException.from(InvalidFormatException.java:67)
com.fasterxml.jackson.databind.DeserializationContext.weirdStringException(DeserializationContext.java:1851)
com.fasterxml.jackson.databind.DeserializationContext.handleWeirdStringValue(DeserializationContext.java:1079)
com.fasterxml.jackson.databind.deser.std.EnumDeserializer._deserializeAltString(EnumDeserializer.java:327)
com.fasterxml.jackson.databind.deser.std.EnumDeserializer._fromString(EnumDeserializer.java:214)
com.fasterxml.jackson.databind.deser.std.EnumDeserializer.deserialize(EnumDeserializer.java:188)
com.fasterxml.jackson.databind.deser.std.StdDeserializer._deserializeWrappedValue(StdDeserializer.java:368)
com.fasterxml.jackson.databind.deser.std.StdDeserializer._deserializeFromArray(StdDeserializer.java:215)
com.fasterxml.jackson.databind.deser.std.EnumDeserializer._deserializeOther(EnumDeserializer.java:337)
com.fasterxml.jackson.databind.deser.std.EnumDeserializer.deserialize(EnumDeserializer.java:201)
com.fasterxml.jackson.databind.deser.std.CollectionDeserializer._deserializeFromArray(CollectionDeserializer.java:347)
My guess from looking at this stuff through the debugger is that the SimpleType of the enum doesn't create a typedeseriealizer and thus we just deserialize the enum by calling EnumDeserializer.deserialize() instead of EnumDeserializer.deserializeWithType(). Is there a configuration that I'm missing?