Tengo una pregunta simple. Es posible agregar inyección de dependencia a través de @Ressource o @Autowired al Hibernate Eventlistener?Spring + EntityManagerFactory + Hibernate Listeners + Injection
voy a mostrar la configuración de mi EntityManagerFactory:
<bean id="entityManagerFactory" class="org.hibernate.ejb.EntityManagerFactoryImpl">
<qualifier value="entityManagerFactory" />
<constructor-arg>
<bean
class="org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean">
<property name="persistenceUnitManager">
<bean
class="org.springframework.orm.jpa.persistenceunit.DefaultPersistenceUnitManagerr">
<property name="defaultDataSource" ref="dataSource" />
</bean>
</property>
<property name="dataSource" ref="dataSource" />
<property name="persistenceUnitName" value="mis" />
<property name="persistenceProviderClass" value="org.hibernate.ejb.HibernatePersistence" />
<property name="jpaProperties" ref="jpa.properties" />
<property name="jpaDialect" ref="jpaDialect" />
<property name="jpaVendorAdapter">
<bean
class="org.springframework.orm.jpa.vendor.HibernateJpaVendorAdapter">
<property name="generateDdl" value="true" />
<property name="database">
<util:constant
static-field="org.springframework.orm.jpa.vendor.Database.POSTGRESQL" />
</property>
<property name="showSql" value="true" />
</bean>
</property>
</bean>
</constructor-arg>
</bean>
Por el momento puedo registrar el oyente a través de jpa.properties,
hibernate.ejb.event.load=com.example.hibernate.events.LoadEvent
pero en este caso no tengo ni la inyección de primavera en mi oyente . Encontré una solución, pero esta usa sessionFactory y no la entidad manager. ¿Puedo modificar sessionfactory en mi contexto? ¡Espero que alguien tenga una buena idea o solución para lidiar con esta problemática!
¡Muchas gracias!
Hola, gracias por su respone ¿Puedes decirme dónde encuentro el ContextHelper? Ich tiene uno de Hibernate.search.util. e Hibernate.search.event y no tiene ningún método "getCurrentApplicationContext()" – moohkooh
Es una clase que necesita crear. Ahora he adjuntado una versión de muestra. –
Muchas gracias, funciona. No puedo decirte, ¡cuánto me ayudaste! Muchas gracias. – moohkooh