diff --git a/spring-data-mongodb/pom.xml b/spring-data-mongodb/pom.xml
index 568d347c4..7c2d818c4 100644
--- a/spring-data-mongodb/pom.xml
+++ b/spring-data-mongodb/pom.xml
@@ -138,6 +138,13 @@
test
+
+ org.threeten
+ threetenbp
+ ${threetenbp}
+ true
+
+
org.slf4j
jul-to-slf4j
diff --git a/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/convert/CustomConversions.java b/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/convert/CustomConversions.java
index 87967ae17..c3f953646 100644
--- a/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/convert/CustomConversions.java
+++ b/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/convert/CustomConversions.java
@@ -36,6 +36,7 @@ import org.springframework.core.convert.converter.GenericConverter;
import org.springframework.core.convert.converter.GenericConverter.ConvertiblePair;
import org.springframework.core.convert.support.GenericConversionService;
import org.springframework.data.convert.JodaTimeConverters;
+import org.springframework.data.convert.ThreeTenBackPortConverters;
import org.springframework.data.convert.Jsr310Converters;
import org.springframework.data.convert.ReadingConverter;
import org.springframework.data.convert.WritingConverter;
@@ -114,6 +115,7 @@ public class CustomConversions {
toRegister.addAll(JodaTimeConverters.getConvertersToRegister());
toRegister.addAll(GeoConverters.getConvertersToRegister());
toRegister.addAll(Jsr310Converters.getConvertersToRegister());
+ toRegister.addAll(ThreeTenBackPortConverters.getConvertersToRegister());
for (Object c : toRegister) {
registerConversion(c);
diff --git a/spring-data-mongodb/src/test/java/org/springframework/data/mongodb/core/convert/CustomConversionsUnitTests.java b/spring-data-mongodb/src/test/java/org/springframework/data/mongodb/core/convert/CustomConversionsUnitTests.java
index e43160df5..7589ca0f7 100644
--- a/spring-data-mongodb/src/test/java/org/springframework/data/mongodb/core/convert/CustomConversionsUnitTests.java
+++ b/spring-data-mongodb/src/test/java/org/springframework/data/mongodb/core/convert/CustomConversionsUnitTests.java
@@ -35,6 +35,7 @@ import org.springframework.core.convert.converter.Converter;
import org.springframework.core.convert.support.DefaultConversionService;
import org.springframework.core.convert.support.GenericConversionService;
import org.springframework.data.mongodb.core.convert.MongoConverters.StringToBigIntegerConverter;
+import org.threeten.bp.LocalDateTime;
import com.mongodb.DBRef;
@@ -234,6 +235,28 @@ public class CustomConversionsUnitTests {
assertThat(conversions.hasCustomReadTarget(createProxyTypeFor(Object.class), String.class), is(true));
}
+ /**
+ * @see DATAMONGO-1131
+ */
+ @Test
+ public void registersConvertersForJsr310() {
+
+ CustomConversions customConversions = new CustomConversions();
+
+ assertThat(customConversions.hasCustomWriteTarget(java.time.LocalDateTime.class), is(true));
+ }
+
+ /**
+ * @see DATAMONGO-1131
+ */
+ @Test
+ public void registersConvertersForThreeTenBackPort() {
+
+ CustomConversions customConversions = new CustomConversions();
+
+ assertThat(customConversions.hasCustomWriteTarget(LocalDateTime.class), is(true));
+ }
+
private static Class> createProxyTypeFor(Class> type) {
ProxyFactory factory = new ProxyFactory();