You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository was archived by the owner on Apr 4, 2025. It is now read-only.
We are noticing a lot of ConversionFailedException for MongoDB Sessions in our logs. Following is the sample logs for reference. All the logs are similar with different UUID.
Message:
Failed to convert from type [java.lang.String] to type [org.bson.types.ObjectId] for value '2359e11c-3479-49b7-b531-cd84123ad006'; nested exception is java.lang.IllegalArgumentException: invalid hexadecimal representation of an ObjectId: [2359e11c-3479-49b7-b531-cd84123ad006] Stacktrace:
org.springframework.core.convert.support.ConversionUtils.invokeConverter(ConversionUtils.java:47)
org.springframework.core.convert.support.GenericConversionService.convert(GenericConversionService.java:191)
org.springframework.core.convert.support.GenericConversionService.convert(GenericConversionService.java:174)
org.springframework.data.mongodb.core.convert.MongoConverter.convertId(MongoConverter.java:146)
org.springframework.data.mongodb.core.convert.QueryMapper.convertId(QueryMapper.java:629)
org.springframework.data.mongodb.core.convert.QueryMapper.getMappedValue(QueryMapper.java:377)
org.springframework.data.mongodb.core.convert.QueryMapper.getMappedObjectForField(QueryMapper.java:240)
org.springframework.data.mongodb.core.convert.QueryMapper.getMappedObject(QueryMapper.java:143)
org.springframework.data.mongodb.core.QueryOperations$QueryContext.getMappedQuery(QueryOperations.java:255)
org.springframework.data.mongodb.core.QueryOperations$UpdateContext.getMappedQuery(QueryOperations.java:646)
org.springframework.data.mongodb.core.MongoTemplate.lambda$
org.springframework.data.mongodb.core.MongoTemplate$$Lambda$.doInCollection
org.springframework.data.mongodb.core.MongoTemplate.execute(MongoTemplate.java:566)
org.springframework.data.mongodb.core.MongoTemplate.saveDocument(MongoTemplate.java:1485)
org.springframework.data.mongodb.core.MongoTemplate.doSave(MongoTemplate.java:1421)
org.springframework.data.mongodb.core.MongoTemplate.save(MongoTemplate.java:1363)
org.springframework.session.data.mongo.MongoIndexedSessionRepository.save(MongoIndexedSessionRepository.java:89)
org.springframework.session.data.mongo.MongoIndexedSessionRepository.save(MongoIndexedSessionRepository.java:50)
org.springframework.session.web.http.SessionRepositoryFilter$SessionRepositoryRequestWrapper.commitSession(SessionRepositoryFilter.java:225)
org.springframework.session.web.http.SessionRepositoryFilter$SessionRepositoryRequestWrapper.access$
org.springframework.session.web.http.SessionRepositoryFilter$SessionRepositoryResponseWrapper.onResponseCommitted(SessionRepositoryFilter.java:179)
org.springframework.session.web.http.OnCommittedResponseWrapper.doOnResponseCommitted(OnCommittedResponseWrapper.java:227)
org.springframework.session.web.http.OnCommittedResponseWrapper.sendRedirect(OnCommittedResponseWrapper.java:129)
javax.servlet.http.HttpServletResponseWrapper.sendRedirect(HttpServletResponseWrapper.java:138)
org.springframework.security.web.firewall.FirewalledResponse.sendRedirect(FirewalledResponse.java:43)
javax.servlet.http.HttpServletResponseWrapper.sendRedirect(HttpServletResponseWrapper.java:138)
org.springframework.security.web.util.OnCommittedResponseWrapper.sendRedirect(OnCommittedResponseWrapper.java:135)
javax.servlet.http.HttpServletResponseWrapper.sendRedirect(HttpServletResponseWrapper.java:138)
org.springframework.security.web.util.OnCommittedResponseWrapper.sendRedirect(OnCommittedResponseWrapper.java:135)
javax.servlet.http.HttpServletResponseWrapper.sendRedirect(HttpServletResponseWrapper.java:138)
org.springframework.security.web.firewall.FirewalledResponse.sendRedirect(FirewalledResponse.java:43)
javax.servlet.http.HttpServletResponseWrapper.sendRedirect(HttpServletResponseWrapper.java:138)
javax.servlet.http.HttpServletResponseWrapper.sendRedirect(HttpServletResponseWrapper.java:138)
org.springframework.security.web.firewall.FirewalledResponse.sendRedirect(FirewalledResponse.java:43)
jdk.internal.reflect.GeneratedMethodAccessor.invoke
jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke
java.lang.reflect.Method.invoke
org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:190)
We are using spring-session-data-mongodb (2.3.0 RELEASE) with spring-boot-starter-data-mongodb (2.3.2 RELEASE). Spring boot 2.3.2 RELEASE with Hoxton.SR5 cloud version.
JVM version (e.g. java -version)
Java 11
The text was updated successfully, but these errors were encountered:
Indeed, that IS an invalid hexadecimal value to try to convert into an ObjectId. The question is...where is it coming from?
A) You may wish to bump things up to Spring Boot 2.3.9. This should put you on Spring Data Neumann-SR6. Not really sure this is the problem, but it will ensure we aren't dealing with something that has already been patched.
B) Can you include a little bit of the configuration you are using? For example, are you using Jackson or JDK for serialization? I also doubt this is the issue at hand, but it can help cut the time in half about which converter I need to investigate.
@gregturn I am using JdkMongoSessionConverter. Though it doesn't look to be needed as this is default, I have created following bean -
@Bean
public JdkMongoSessionConverter jdkMongoSessionConverter() {
return new JdkMongoSessionConverter(serverProperties.getServlet().getSession().getTimeout());
}
Apart from above, there is no other explicit configuration.
Sign up for freeto subscribe to this conversation on GitHub.
Already have an account?
Sign in.
We are noticing a lot of ConversionFailedException for MongoDB Sessions in our logs. Following is the sample logs for reference. All the logs are similar with different UUID.
Message:
Failed to convert from type [java.lang.String] to type [org.bson.types.ObjectId] for value '2359e11c-3479-49b7-b531-cd84123ad006'; nested exception is java.lang.IllegalArgumentException: invalid hexadecimal representation of an ObjectId: [2359e11c-3479-49b7-b531-cd84123ad006]
Stacktrace:
org.springframework.core.convert.support.ConversionUtils.invokeConverter(ConversionUtils.java:47)
org.springframework.core.convert.support.GenericConversionService.convert(GenericConversionService.java:191)
org.springframework.core.convert.support.GenericConversionService.convert(GenericConversionService.java:174)
org.springframework.data.mongodb.core.convert.MongoConverter.convertId(MongoConverter.java:146)
org.springframework.data.mongodb.core.convert.QueryMapper.convertId(QueryMapper.java:629)
org.springframework.data.mongodb.core.convert.QueryMapper.getMappedValue(QueryMapper.java:377)
org.springframework.data.mongodb.core.convert.QueryMapper.getMappedObjectForField(QueryMapper.java:240)
org.springframework.data.mongodb.core.convert.QueryMapper.getMappedObject(QueryMapper.java:143)
org.springframework.data.mongodb.core.QueryOperations$QueryContext.getMappedQuery(QueryOperations.java:255)
org.springframework.data.mongodb.core.QueryOperations$UpdateContext.getMappedQuery(QueryOperations.java:646)
org.springframework.data.mongodb.core.MongoTemplate.lambda$
org.springframework.data.mongodb.core.MongoTemplate$$Lambda$.doInCollection
org.springframework.data.mongodb.core.MongoTemplate.execute(MongoTemplate.java:566)
org.springframework.data.mongodb.core.MongoTemplate.saveDocument(MongoTemplate.java:1485)
org.springframework.data.mongodb.core.MongoTemplate.doSave(MongoTemplate.java:1421)
org.springframework.data.mongodb.core.MongoTemplate.save(MongoTemplate.java:1363)
org.springframework.session.data.mongo.MongoIndexedSessionRepository.save(MongoIndexedSessionRepository.java:89)
org.springframework.session.data.mongo.MongoIndexedSessionRepository.save(MongoIndexedSessionRepository.java:50)
org.springframework.session.web.http.SessionRepositoryFilter$SessionRepositoryRequestWrapper.commitSession(SessionRepositoryFilter.java:225)
org.springframework.session.web.http.SessionRepositoryFilter$SessionRepositoryRequestWrapper.access$
org.springframework.session.web.http.SessionRepositoryFilter$SessionRepositoryResponseWrapper.onResponseCommitted(SessionRepositoryFilter.java:179)
org.springframework.session.web.http.OnCommittedResponseWrapper.doOnResponseCommitted(OnCommittedResponseWrapper.java:227)
org.springframework.session.web.http.OnCommittedResponseWrapper.sendRedirect(OnCommittedResponseWrapper.java:129)
javax.servlet.http.HttpServletResponseWrapper.sendRedirect(HttpServletResponseWrapper.java:138)
org.springframework.security.web.firewall.FirewalledResponse.sendRedirect(FirewalledResponse.java:43)
javax.servlet.http.HttpServletResponseWrapper.sendRedirect(HttpServletResponseWrapper.java:138)
org.springframework.security.web.util.OnCommittedResponseWrapper.sendRedirect(OnCommittedResponseWrapper.java:135)
javax.servlet.http.HttpServletResponseWrapper.sendRedirect(HttpServletResponseWrapper.java:138)
org.springframework.security.web.util.OnCommittedResponseWrapper.sendRedirect(OnCommittedResponseWrapper.java:135)
javax.servlet.http.HttpServletResponseWrapper.sendRedirect(HttpServletResponseWrapper.java:138)
org.springframework.security.web.firewall.FirewalledResponse.sendRedirect(FirewalledResponse.java:43)
javax.servlet.http.HttpServletResponseWrapper.sendRedirect(HttpServletResponseWrapper.java:138)
javax.servlet.http.HttpServletResponseWrapper.sendRedirect(HttpServletResponseWrapper.java:138)
org.springframework.security.web.firewall.FirewalledResponse.sendRedirect(FirewalledResponse.java:43)
jdk.internal.reflect.GeneratedMethodAccessor.invoke
jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke
java.lang.reflect.Method.invoke
org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:190)
We are using spring-session-data-mongodb (2.3.0 RELEASE) with spring-boot-starter-data-mongodb (2.3.2 RELEASE). Spring boot 2.3.2 RELEASE with Hoxton.SR5 cloud version.
JVM version (e.g.
java -version
)Java 11
The text was updated successfully, but these errors were encountered: