Spring & Hibernate EJB Veranstaltungen
Frage
Ist es möglich, ein Feder-Managed EJB3 winter Zuhörer zu definieren?
Ich habe diese Definition in meinem persistence.xml :
<properties>
<property name="hibernate.ejb.interceptor"
value="my.class.HibernateAuditInterceptor" />
<property name="hibernate.ejb.event.post-update"
value="my.class.HibernateAuditTrailEventListener" />
</properties>
Aber ich möchte HibernateAuditInterceptor
und HibernateAuditTrailEventListener
mit Feder verwalten, so dass ich einige Bohne Injektion (ex: session-scoped Bohne) tun innerhalb dieser Klassen. Ist das möglich?
Lösung
Das Problem ist, dass diese Eigenschaften sind nur Strings. Auch wenn Sie Ihre Session als Spring-Bean definieren, alle Eigenschaften, die Sie durch den hibernateProperties Setter es passieren sind nur Zeichenfolgen:
<bean id="mySessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
<property name="dataSource"ref="myDataSource"/>
<property name="mappingResources">
<list>
<value>whatever.hbm.xml</value>
</list>
</property>
<property name="hibernateProperties">
<value>
hibernate.ejb.interceptor= my.class.HibernateAuditInterceptor
</value>
<value>
hibernate.ejb.event.post-update=my.class.HibernateAuditTrailEventListener
</value>
</property>
</bean>
Also ich glaube nicht, dass Sie das tun können.
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow