diff --git a/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/convert/MappingMongoConverter.java b/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/convert/MappingMongoConverter.java index dc7327246..525146dd3 100644 --- a/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/convert/MappingMongoConverter.java +++ b/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/convert/MappingMongoConverter.java @@ -832,7 +832,7 @@ public class MappingMongoConverter extends AbstractMongoConverter implements App return conversionService.convert(obj, target); } - if (null != obj && conversions.isSimpleType(obj.getClass())) { + if (conversions.isSimpleType(obj.getClass())) { // Doesn't need conversion return getPotentiallyConvertedSimpleWrite(obj); } diff --git a/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/repository/query/AbstractMongoQuery.java b/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/repository/query/AbstractMongoQuery.java index 51fdc88c5..278fd89b3 100644 --- a/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/repository/query/AbstractMongoQuery.java +++ b/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/repository/query/AbstractMongoQuery.java @@ -264,7 +264,13 @@ public abstract class AbstractMongoQuery implements RepositoryQuery { private boolean isListOfGeoResult() { TypeInformation returnType = method.getReturnType(); - return returnType.getType().equals(List.class) && GeoResult.class.equals(returnType.getComponentType()); + + if (!returnType.getType().equals(List.class)) { + return false; + } + + TypeInformation componentType = returnType.getComponentType(); + return componentType == null ? false : GeoResult.class.equals(componentType.getType()); } } }