Zdravím,

Jakým způsobem jsou určovány hranice transakcí? Pomocí JDBC metod begin,
commit a rollback?

Určitě se pro podobné účely dá použít JTA (Java Transaction API). Pokud
ale chcete, aby byl z vnořené transakce přístup k necommitnutým změnám
vnější databáze musí toto podporovat databáze.
Můžete zkusit např. JOTM - http://jotm.objectweb.org/ . Ukázku najdete
třeba zde
http://jotm.objectweb.org/current/jotm/doc/howto-tomcat-jotm.html .

Nicméně nejsem si jistý jak bude snadné do existujícího kódu přidat
podporu JTA. Skoro bych řekl, že nejjednodušší bude udělat novou
transakci pro vnitřní třídu a udělat wrapper (např. pomocí tzv. dynamic
proxy), který při vyhození výjímky rollbackne i tu vnější transakci.
Případně si udělat vlastní wrapper JDBC a řešit to v něm.

Ale opravdu záleží na spoustě podmínek - na třídách, nákladech na
změnu, ...
Asi to budete muset upřesnit.

S pozdravem

Petr Ferschmann

Pa Ko píše v Út 08. 05. 2007 v 16:20 +0200:

> Zdravim konferenci,
> nevite nekdo jestli je mozne pomoci jdbc nebo treba nejakeho orm
> frameworku provest
> vnorenou transakci? tzn. dejme tomu, ze bych mel tridu A, ktera
> vyuziva transakci a pak tridu B, ktera vyuziva transakce, 
> ve ktere ale vola zaroven transakci z tridy A (kdyz se A nepovede,
> rollbackne se i B). Tusi nekdo?
> Zaroven bych se ale chtel vyvarovat savepointu a pouzivani SUBTRANS.
> (Jde mi o vyuzivani jiz napsane tridy, ktera je psana s vyuzitim
> transakci) 
> 
> Diky moc
> 

Petr Ferschmann 


SoftEU s.r.o.
-----------------------------------
Bolevecká 6
301 00 Plzen
Czech Republic
-----------------------------------
Phone: +420 373 731 284
       +420 373 729 300
Fax:   +420 373 729 301
Cell:  +420 775 638 008
E-mail: [EMAIL PROTECTED] 

Odpovedet emailem