Save This Page
Home » spring-framework-2.5.5-with-dependencies » org.springframework » transaction » jta » [javadoc | source]
org.springframework.transaction.jta
public class: WebLogicJtaTransactionManager [javadoc | source]
java.lang.Object
   org.springframework.transaction.support.AbstractPlatformTransactionManager
      org.springframework.transaction.jta.JtaTransactionManager
         org.springframework.transaction.jta.WebLogicJtaTransactionManager

All Implemented Interfaces:
    Serializable, TransactionFactory, InitializingBean, PlatformTransactionManager

Special JtaTransactionManager variant for BEA WebLogic (7.0, 8.1 and higher). Supports the full power of Spring's transaction definitions on WebLogic's transaction coordinator, beyond standard JTA: transaction names, per-transaction isolation levels, and proper resuming of transactions in all cases.

Uses WebLogic's special begin(name) method to start a JTA transaction, in order to make Spring-driven transactions visible in WebLogic's transaction monitor. In case of Spring's declarative transactions, the exposed name will (by default) be the fully-qualified class name + "." + method name.

Supports a per-transaction isolation level through WebLogic's corresponding JTA transaction property "ISOLATION LEVEL". This will apply the specified isolation level (e.g. ISOLATION_SERIALIZABLE) to all JDBC Connections that participate in the given transaction.

Invokes WebLogic's special forceResume method if standard JTA resume failed, to also resume if the target transaction was marked rollback-only. If you're not relying on this feature of transaction suspension in the first place, Spring's standard JtaTransactionManager will behave properly too.

Automatically detects WebLogic Server 7.0 or 8.1+ and adapts accordingly. Usage on a WebLogic client is also supported, although with restricted functionality: transaction names cannot be applied there.

By default, the JTA UserTransaction and TransactionManager handles are fetched directly from WebLogic's TransactionHelper (on 8.1+) or TxHelper (on 7.0). This can be overridden by specifying "userTransaction"/"userTransactionName" and "transactionManager"/"transactionManagerName", passing in existing handles or specifying corresponding JNDI locations to look up.

Fields inherited from org.springframework.transaction.jta.JtaTransactionManager:
DEFAULT_USER_TRANSACTION_NAME,  FALLBACK_TRANSACTION_MANAGER_NAMES,  DEFAULT_TRANSACTION_SYNCHRONIZATION_REGISTRY_NAME
Fields inherited from org.springframework.transaction.support.AbstractPlatformTransactionManager:
SYNCHRONIZATION_ALWAYS,  SYNCHRONIZATION_ON_ACTUAL_TRANSACTION,  SYNCHRONIZATION_NEVER,  logger
Method from org.springframework.transaction.jta.WebLogicJtaTransactionManager Summary:
afterPropertiesSet,   createTransaction,   doJtaBegin,   doJtaResume,   retrieveTransactionManager,   retrieveUserTransaction
Methods from org.springframework.transaction.jta.JtaTransactionManager:
afterPropertiesSet,   applyIsolationLevel,   applyTimeout,   buildUserTransaction,   checkUserTransactionAndTransactionManager,   createTransaction,   doBegin,   doCommit,   doGetJtaTransaction,   doGetTransaction,   doJtaBegin,   doJtaResume,   doJtaSuspend,   doRegisterAfterCompletionWithJtaTransaction,   doResume,   doRollback,   doSetRollbackOnly,   doSuspend,   findTransactionManager,   findTransactionSynchronizationRegistry,   findUserTransaction,   getJndiEnvironment,   getJndiTemplate,   getTransactionManager,   getUserTransaction,   initTransactionSynchronizationRegistry,   initUserTransactionAndTransactionManager,   isExistingTransaction,   lookupTransactionManager,   lookupTransactionSynchronizationRegistry,   lookupUserTransaction,   registerAfterCompletionWithExistingTransaction,   retrieveTransactionManager,   retrieveTransactionSynchronizationRegistry,   retrieveUserTransaction,   setAllowCustomIsolationLevels,   setAutodetectTransactionManager,   setAutodetectUserTransaction,   setCacheUserTransaction,   setJndiEnvironment,   setJndiTemplate,   setTransactionManager,   setTransactionManagerName,   setTransactionSynchronizationRegistryName,   setUserTransaction,   setUserTransactionName,   shouldCommitOnGlobalRollbackOnly,   useSavepointForNestedTransaction
Methods from org.springframework.transaction.support.AbstractPlatformTransactionManager:
commit,   determineTimeout,   doBegin,   doCleanupAfterCompletion,   doCommit,   doGetTransaction,   doResume,   doRollback,   doSetRollbackOnly,   doSuspend,   getDefaultTimeout,   getTransaction,   getTransactionSynchronization,   invokeAfterCompletion,   isExistingTransaction,   isFailEarlyOnGlobalRollbackOnly,   isGlobalRollbackOnParticipationFailure,   isNestedTransactionAllowed,   isRollbackOnCommitFailure,   isValidateExistingTransaction,   newTransactionStatus,   prepareForCommit,   registerAfterCompletionWithExistingTransaction,   resume,   rollback,   setDefaultTimeout,   setFailEarlyOnGlobalRollbackOnly,   setGlobalRollbackOnParticipationFailure,   setNestedTransactionAllowed,   setRollbackOnCommitFailure,   setTransactionSynchronization,   setTransactionSynchronizationName,   setValidateExistingTransaction,   shouldCommitOnGlobalRollbackOnly,   suspend,   triggerBeforeCommit,   triggerBeforeCompletion,   useSavepointForNestedTransaction
Methods from java.lang.Object:
equals,   getClass,   hashCode,   notify,   notifyAll,   toString,   wait,   wait,   wait
Method from org.springframework.transaction.jta.WebLogicJtaTransactionManager Detail:
 public  void afterPropertiesSet() throws TransactionSystemException 
 public Transaction createTransaction(String name,
    int timeout) throws SystemException, NotSupportedException 
 protected  void doJtaBegin(JtaTransactionObject txObject,
    TransactionDefinition definition) throws SystemException, NotSupportedException 
 protected  void doJtaResume(JtaTransactionObject txObject,
    Object suspendedTransaction) throws SystemException, InvalidTransactionException 
 protected TransactionManager retrieveTransactionManager() throws TransactionSystemException 
 protected UserTransaction retrieveUserTransaction() throws TransactionSystemException