Spring 2.5 / JPA (Hibernate) und mehrere PersistenceUnits mit Zugriff auf eine Datenbank

15 views
Skip to first unread message

Gonne

unread,
Jun 9, 2008, 5:49:08 AM6/9/08
to Spring User Group Germany
Hallo,

dieses Thema wurde schon mal in ähnlicher Form hier diskutiert (http://
groups.google.com/group/sugg/browse_thread/thread/3368e3fe0bf21653).
Bei meinem Fall handelt es sich um eine Webanwendung mit Tomcat als
Container. Für die Persistenz wird JPA (Hibernate) verwendet. Für JPA
entspricht die Umgebung also Java SE.
Die Webanwendung soll mehrere Entity-Archive nutzen, die jeweils eine
eigene PersistenceUnit mittels persistence.xml definieren. Die
Tabellen der PersistenceUnits befinden sich allerdings alle in einer
Datenbank, so daß auf XA Transaktionen und einen JTA
Transaktionsmanager eigentlich verzichtet werden kann bzw. muß.
Ich habe in der Spring-Konfiguration mehrere EntityManagerFactories
mit einem gemeinsamen PersistenUnitManager definiert, der alle
PersistenceUnits auf eine gemeinsame DataSource mapped.
Welchen Transaktionsmanager kann ich jetzt verwenden, um Entities aus
verschiedenen PersistenceUnits innerhalb einer Transaktion zu
verwenden. Mir widerstrebt es eigentlich für diesen Fall einen
JtaTransanctionManager verwenden zu müssen (in der definierten
Umgebung mangels JTA auch nicht möglich) und für den
JpaTransactionManager müßte pro EntityManagerFactory einer definiert
werden, die nicht vereinbar sind.
Da alle PersistenceUnits eine DataSource verwenden würde mir höchstens
noch der DataSourceTransactionManager als Lösung einfallen.
Was schlagt ihr vor?

Viele Grüße,
Gonne
Reply all
Reply to author
Forward
0 new messages