Kann Spring DI auch bei JPA anotierten Pojos?

dmike

Bekanntes Mitglied
Java:
@Entity
@Table(name="ENTITY")
public final class ENTITY {

    @Transient
    @Autowired
    public SomeEntityRepository repository;


}

Hab eine JPA annotierte Entity und die soll wenn es geht per Spring eine Dependency injiziert bekommen. Das klappt mit den anderen Pojos nur nicht mit meinen Datenbank-Pojos. Als JPA Provider nehm ich Hibernate 3 (latest) und Spring 3 (latest).
 
Hab eine JPA annotierte Entity und die soll wenn es geht per Spring eine Dependency injiziert bekommen. Das klappt mit den anderen Pojos nur nicht mit meinen Datenbank-Pojos. Als JPA Provider nehm ich Hibernate 3 (latest) und Spring 3 (latest).

Wie sehen deine anderen Pojos aus?
Was für ein scanning benutzt du?Package scanning?
 
das liegt mit sicherheit daran, dass JPA new oder reflection verwendet und sich nicht für spring interessiert.

-> verwende die repositoris am besten nicht in den entities
 
Müsste Spring aber eigentlich können, sofern man AspectJ nutzt, damit können zumindest die "new" Aufrufe abgefangen und dort dann injeziert werden.

Edit: Evtl. hilft es hier sich mal eine Spring Roo Anwendung anzuschauen. Dort wird ActiveRecord genutzt und die Repositories/DAOs in die Modells (JPA) injeziert.
 

Zurück
Oben