diff --git a/spring-data-jpa/src/main/java/org/springframework/data/jpa/repository/config/JpaAuditingRegistrar.java b/spring-data-jpa/src/main/java/org/springframework/data/jpa/repository/config/JpaAuditingRegistrar.java index 1f7cb5add..2116c5789 100644 --- a/spring-data-jpa/src/main/java/org/springframework/data/jpa/repository/config/JpaAuditingRegistrar.java +++ b/spring-data-jpa/src/main/java/org/springframework/data/jpa/repository/config/JpaAuditingRegistrar.java @@ -21,12 +21,10 @@ import static org.springframework.data.jpa.repository.config.BeanDefinitionNames import java.lang.annotation.Annotation; import org.springframework.beans.factory.BeanDefinitionStoreException; -import org.springframework.beans.factory.ListableBeanFactory; import org.springframework.beans.factory.aspectj.AnnotationBeanConfigurerAspect; import org.springframework.beans.factory.config.BeanDefinition; import org.springframework.beans.factory.parsing.BeanComponentDefinition; import org.springframework.beans.factory.support.BeanDefinitionBuilder; -import org.springframework.beans.factory.support.BeanDefinitionReaderUtils; import org.springframework.beans.factory.support.BeanDefinitionRegistry; import org.springframework.beans.factory.support.RootBeanDefinition; import org.springframework.context.annotation.ImportBeanDefinitionRegistrar; @@ -36,9 +34,6 @@ import org.springframework.data.auditing.config.AuditingConfiguration; import org.springframework.data.config.ParsingUtils; import org.springframework.data.jpa.domain.support.AuditingBeanFactoryPostProcessor; import org.springframework.data.jpa.domain.support.AuditingEntityListener; -import org.springframework.data.mapping.context.PersistentEntities; -import org.springframework.data.repository.config.PersistentEntitiesFactoryBean; -import org.springframework.lang.Nullable; import org.springframework.util.Assert; import org.springframework.util.ClassUtils; @@ -94,38 +89,9 @@ class JpaAuditingRegistrar extends AuditingBeanDefinitionRegistrarSupport { protected void postProcess(BeanDefinitionBuilder builder, AuditingConfiguration configuration, BeanDefinitionRegistry registry) { - String persistentEntitiesBeanName = detectPersistentEntitiesBeanName(registry); - - if (persistentEntitiesBeanName == null) { - - persistentEntitiesBeanName = BeanDefinitionReaderUtils.uniqueBeanName("jpaPersistentEntities", registry); - - // TODO: https://github.com/spring-projects/spring-framework/issues/28728 - BeanDefinitionBuilder definition = BeanDefinitionBuilder.genericBeanDefinition(PersistentEntities.class) // - .setFactoryMethod("of") // - .addConstructorArgReference(JPA_MAPPING_CONTEXT_BEAN_NAME); - - registry.registerBeanDefinition(persistentEntitiesBeanName, definition.getBeanDefinition()); - } - - builder.addConstructorArgReference(persistentEntitiesBeanName); + builder.setFactoryMethod("from").addConstructorArgReference(JPA_MAPPING_CONTEXT_BEAN_NAME); } - @Nullable - private static String detectPersistentEntitiesBeanName(BeanDefinitionRegistry registry) { - - if (registry instanceof ListableBeanFactory beanFactory) { - for (String bn : beanFactory.getBeanNamesForType(PersistentEntities.class)) { - if (bn.startsWith("jpa")) { - return bn; - } - } - } - - return null; - } - - /** * @param registry, the {@link BeanDefinitionRegistry} to be used to register the * {@link AnnotationBeanConfigurerAspect}.