diff --git a/pom.xml b/pom.xml
index 526ad136a5..e27726e761 100644
--- a/pom.xml
+++ b/pom.xml
@@ -5,7 +5,7 @@
org.springframework.data
spring-data-commons
- 2.6.0-SNAPSHOT
+ 2.6.0-gh-2329-SNAPSHOT
Spring Data Core
diff --git a/src/main/java/org/springframework/data/mapping/context/AbstractMappingContext.java b/src/main/java/org/springframework/data/mapping/context/AbstractMappingContext.java
index f04bdd5ac3..d6755d1942 100644
--- a/src/main/java/org/springframework/data/mapping/context/AbstractMappingContext.java
+++ b/src/main/java/org/springframework/data/mapping/context/AbstractMappingContext.java
@@ -108,7 +108,8 @@ protected AbstractMappingContext() {
this.persistentPropertyPathFactory = new PersistentPropertyPathFactory<>(this);
EntityInstantiators instantiators = new EntityInstantiators();
- PersistentPropertyAccessorFactory accessorFactory = NativeDetector.inNativeImage() ? BeanWrapperPropertyAccessorFactory.INSTANCE
+ PersistentPropertyAccessorFactory accessorFactory = NativeDetector.inNativeImage()
+ ? BeanWrapperPropertyAccessorFactory.INSTANCE
: new ClassGeneratingPropertyAccessorFactory();
this.persistentPropertyAccessorFactory = new InstantiationAwarePropertyAccessorFactory(accessorFactory,
@@ -378,25 +379,21 @@ protected Optional addPersistentEntity(TypeInformation> typeInformation) {
descriptors.put(descriptor.getName(), descriptor);
}
- try {
-
- PersistentPropertyCreator persistentPropertyCreator = new PersistentPropertyCreator(entity, descriptors);
- ReflectionUtils.doWithFields(type, persistentPropertyCreator, PersistentPropertyFilter.INSTANCE);
- persistentPropertyCreator.addPropertiesForRemainingDescriptors();
+ PersistentPropertyCreator persistentPropertyCreator = new PersistentPropertyCreator(entity, descriptors);
+ ReflectionUtils.doWithFields(type, persistentPropertyCreator, PersistentPropertyFilter.INSTANCE);
+ persistentPropertyCreator.addPropertiesForRemainingDescriptors();
- entity.verify();
-
- if (persistentPropertyAccessorFactory.isSupported(entity)) {
- entity.setPersistentPropertyAccessorFactory(persistentPropertyAccessorFactory);
- }
+ entity.verify();
- } catch (RuntimeException e) {
- persistentEntities.remove(typeInformation);
- throw e;
+ if (persistentPropertyAccessorFactory.isSupported(entity)) {
+ entity.setPersistentPropertyAccessorFactory(persistentPropertyAccessorFactory);
}
} catch (BeansException e) {
throw new MappingException(e.getMessage(), e);
+ } catch (RuntimeException e) {
+ persistentEntities.remove(typeInformation);
+ throw e;
} finally {
write.unlock();
}