-
Notifications
You must be signed in to change notification settings - Fork 6.1k
Closed
Labels
Milestone
Description
Saml2AuthenticationExceptionMixin
fails when serializing Saml2AuthenticationException
on JDK 17, unless the VM option --add-opens java.base/java.lang=ALL-UNNAMED
is present.
com.fasterxml.jackson.databind.exc.InvalidDefinitionException: Invalid type definition for type `org.springframework.security.saml2.provider.service.authentication.Saml2AuthenticationException`: Failed to call `setAccess()` on Field 'detailMessage' (of class `java.lang.Throwable`) due to `java.lang.reflect.InaccessibleObjectException`, problem: Unable to make field private java.lang.String java.lang.Throwable.detailMessage accessible: module java.base does not "opens java.lang" to unnamed module @5562c41e
at [Source: (String)"{ "@class": "org.springframework.security.saml2.provider.service.authentication.Saml2AuthenticationException", "detailMessage": "exceptionMessage", "error": { "@class": "org.springframework.security.saml2.core.Saml2Error", "errorCode": "errorCode", "description": "errorDescription" }}"; line: 1, column: 1]
at app//com.fasterxml.jackson.databind.exc.InvalidDefinitionException.from(InvalidDefinitionException.java:62)
at app//com.fasterxml.jackson.databind.DeserializationContext.reportBadTypeDefinition(DeserializationContext.java:1887)
at app//com.fasterxml.jackson.databind.deser.BeanDeserializerBuilder._handleBadAccess(BeanDeserializerBuilder.java:620)
at app//com.fasterxml.jackson.databind.deser.BeanDeserializerBuilder._fixAccess(BeanDeserializerBuilder.java:537)
at app//com.fasterxml.jackson.databind.deser.BeanDeserializerBuilder.build(BeanDeserializerBuilder.java:384)
at app//com.fasterxml.jackson.databind.deser.BeanDeserializerFactory.buildThrowableDeserializer(BeanDeserializerFactory.java:463)
at app//com.fasterxml.jackson.databind.deser.BeanDeserializerFactory.createBeanDeserializer(BeanDeserializerFactory.java:113)
at app//com.fasterxml.jackson.databind.deser.DeserializerCache._createDeserializer2(DeserializerCache.java:415)
at app//com.fasterxml.jackson.databind.deser.DeserializerCache._createDeserializer(DeserializerCache.java:350)
at app//com.fasterxml.jackson.databind.deser.DeserializerCache._createAndCache2(DeserializerCache.java:264)
at app//com.fasterxml.jackson.databind.deser.DeserializerCache._createAndCacheValueDeserializer(DeserializerCache.java:244)
at app//com.fasterxml.jackson.databind.deser.DeserializerCache.findValueDeserializer(DeserializerCache.java:142)
at app//com.fasterxml.jackson.databind.DeserializationContext.findRootValueDeserializer(DeserializationContext.java:648)
at app//com.fasterxml.jackson.databind.ObjectMapper._findRootDeserializer(ObjectMapper.java:4861)
at app//com.fasterxml.jackson.databind.ObjectMapper._readMapAndClose(ObjectMapper.java:4731)
at app//com.fasterxml.jackson.databind.ObjectMapper.readValue(ObjectMapper.java:3677)
at app//com.fasterxml.jackson.databind.ObjectMapper.readValue(ObjectMapper.java:3645)
at app//org.springframework.security.saml2.jackson2.Saml2AuthenticationExceptionMixinTests.shouldDeserialize(Saml2AuthenticationExceptionMixinTests.java:53)
...
This test began failing when updating the jacoco tool version to 0.8.9
. Related gh-13798 and gh-11893. See this comment.
cc @ugrave