Specifikace Java EE označuje, že objekty typu bean CMT nemusí přistupovat k objektu UserTransaction. Server WebLogic však podporuje vyhledání UserTransaction.
Toto pravidlo označí následující typ kódu:
Vyhledání UserTransaction serveru WebLogic|
UserTransaction xact = ctx.lookup("javax.transaction.UserTransaction"); nebo
UserTransaction xact = ctx.lookup("weblogic.transaction.UserTransaction"); |
Přístup k UserTransaction není v objektu bean, kde je označen, povolen. Vaše řešení závisí na tom, co se kód pokouší provést s UserTransaction. Zkontrolujte použití UserTransaction, abyste určili, jak se kód musí změnit, nebo zda lze odkaz odebrat.
Alternativy k UserTransaction zahrnují použití UOWManager. Vyhledávání pro tohoto správce také používá vyhledání v rozhraní JNDI, například:
UOWManager Lookup|
UOWManager uowMgr = ctx.lookup("java:comp/websphere/UOWManager"); |
Jiný přístup může být pro použití rozhraní SessionSynchronization, které vám umožní přístup k metodám afterBegin, beforeCompletion a afterCompletion. Metoda beforeCompletion vám poskytne příležitost vrátit se k předchozí verzi transakce v případě, že nastane chyba.