Мне нужно создать перехватчик Hibernate, который должен иметь доступ к диспетчеру сущностей. Проблема в том, что когда я определяю, как будет создаваться EntityManagerFactory, используя XML-файл конфигурации в Spring для определения bean-объекта entityManagerFactory, я должен сообщить объекту управления, какой компонент-перехватчик он должен использовать. Дело в том, что мой бин-перехватчик имеет введенное поле менеджера сущностей, определенное с помощью
@PersistenceContext private EntityManager entityManager;
Когда я делаю это Spring, выдает следующее исключение:
Вызвано: org.springframework.beans.factory.BeanCreationException: Ошибка создания бина с именем 'ar.com.zauber.commons.repository.utils.ConfigurableHibernatePersistence # 50d17ec3', определенного в ресурсе пути к классу [ar / com / xxx / impl / config / persistence / persistence-impl-xxx-spring.xml]: не удается разрешить ссылку на bean-компонент-перехватчик при установке свойства bean-компонента interceptor; вложенным исключением является org.springframework.beans.factory.BeanCreationException: ошибка при создании компонента с именем 'interceptor': не удалось добавить зависимости персистентности; вложенное исключение - org.springframework.beans.factory.BeanCurrentlyInCreationException: ошибка создания бина с именем entityManagerFactory: FactoryBean, который в данный момент находится в процессе создания, возвратил ноль из getObject
Проблема в том, что менеджер сущностей не может быть введен, поскольку создается фабрика менеджера сущностей.
Есть идеи, как решить эту проблему?