| If it helps summary of my investigation (bear in mind I have a limited knowledge of the codebase): unwrapMode is being set UNWRAP because that's what AnnotationMetadataProvider does when:
- there's an annotation on the type parameter
- ReflectionHelper doesn't consider type Iterable ( ReflectionHelper.isIterable returns false for Map).
See here (this is where unwrapMode is decided to be UNWRAP): https://github.com/hibernate/hibernate-validator/blob/master/engine/src/main/java/org/hibernate/validator/internal/metadata/provider/AnnotationMetaDataProvider.java#L267 Later it blows up because there is "No validation value unwrapper" registered for Map. I believe that as a workaround you can put "@UnwrapValidatedValue(false)" on your Map field. I don't know how to fix it, but I hope this comment helps. |