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]
