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?

War es hilfreich?

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
scroll top