本文整理汇总了Java中org.springframework.transaction.jta.JtaTransactionManager.commit方法的典型用法代码示例。如果您正苦于以下问题:Java JtaTransactionManager.commit方法的具体用法?Java JtaTransactionManager.commit怎么用?Java JtaTransactionManager.commit使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类org.springframework.transaction.jta.JtaTransactionManager
的用法示例。
在下文中一共展示了JtaTransactionManager.commit方法的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: jtaTransactionManagerWithDoubleCommit
import org.springframework.transaction.jta.JtaTransactionManager; //导入方法依赖的package包/类
@Test
public void jtaTransactionManagerWithDoubleCommit() throws Exception {
UserTransaction ut = mock(UserTransaction.class);
given(ut.getStatus()).willReturn(Status.STATUS_NO_TRANSACTION,
Status.STATUS_ACTIVE, Status.STATUS_ACTIVE);
JtaTransactionManager ptm = newJtaTransactionManager(ut);
assertFalse(TransactionSynchronizationManager.isSynchronizationActive());
TransactionStatus status = ptm.getTransaction(new DefaultTransactionDefinition());
assertTrue(TransactionSynchronizationManager.isSynchronizationActive());
// first commit
ptm.commit(status);
assertFalse(TransactionSynchronizationManager.isSynchronizationActive());
try {
// second commit attempt
ptm.commit(status);
fail("Should have thrown IllegalTransactionStateException");
}
catch (IllegalTransactionStateException ex) {
// expected
}
verify(ut).begin();
verify(ut).commit();
}
示例2: jtaTransactionManagerWithRollbackAndCommit
import org.springframework.transaction.jta.JtaTransactionManager; //导入方法依赖的package包/类
@Test
public void jtaTransactionManagerWithRollbackAndCommit() throws Exception {
UserTransaction ut = mock(UserTransaction.class);
given(ut.getStatus()).willReturn(Status.STATUS_NO_TRANSACTION, Status.STATUS_ACTIVE);
JtaTransactionManager ptm = newJtaTransactionManager(ut);
assertFalse(TransactionSynchronizationManager.isSynchronizationActive());
TransactionStatus status = ptm.getTransaction(new DefaultTransactionDefinition());
assertTrue(TransactionSynchronizationManager.isSynchronizationActive());
// first: rollback
ptm.rollback(status);
assertFalse(TransactionSynchronizationManager.isSynchronizationActive());
try {
// second: commit attempt
ptm.commit(status);
fail("Should have thrown IllegalTransactionStateException");
}
catch (IllegalTransactionStateException ex) {
// expected
}
verify(ut).begin();
verify(ut).rollback();
}
示例3: testWithJtaTxManager
import org.springframework.transaction.jta.JtaTransactionManager; //导入方法依赖的package包/类
@Test
public void testWithJtaTxManager() {
JtaTransactionManager jtaManager = new JtaTransactionManager(new MockUserTransaction());
DefaultTransactionDefinition txDef = new DefaultTransactionDefinition();
txDef.setPropagationBehaviorName("PROPAGATION_REQUIRED");
TransactionStatus status = jtaManager.getTransaction(txDef);
session = SqlSessionUtils.getSqlSession(sqlSessionFactory);
session.getMapper(TestMapper.class).findTest();
SqlSessionUtils.closeSqlSession(session, sqlSessionFactory);
jtaManager.commit(status);
// assume a real JTA tx would enlist and commit the JDBC connection
assertNoCommitJdbc();
assertCommitSession();
assertSingleConnection();
}
示例4: testJtaTransactionManagerWithDoubleCommit
import org.springframework.transaction.jta.JtaTransactionManager; //导入方法依赖的package包/类
public void testJtaTransactionManagerWithDoubleCommit() throws Exception {
UserTransaction ut = mock(UserTransaction.class);
given(ut.getStatus()).willReturn(Status.STATUS_NO_TRANSACTION,
Status.STATUS_ACTIVE, Status.STATUS_ACTIVE);
JtaTransactionManager ptm = newJtaTransactionManager(ut);
assertFalse(TransactionSynchronizationManager.isSynchronizationActive());
TransactionStatus status = ptm.getTransaction(new DefaultTransactionDefinition());
assertTrue(TransactionSynchronizationManager.isSynchronizationActive());
// first commit
ptm.commit(status);
assertFalse(TransactionSynchronizationManager.isSynchronizationActive());
try {
// second commit attempt
ptm.commit(status);
fail("Should have thrown IllegalTransactionStateException");
}
catch (IllegalTransactionStateException ex) {
// expected
}
verify(ut).begin();
verify(ut).commit();
}
示例5: testJtaTransactionManagerWithRollbackAndCommit
import org.springframework.transaction.jta.JtaTransactionManager; //导入方法依赖的package包/类
public void testJtaTransactionManagerWithRollbackAndCommit() throws Exception {
UserTransaction ut = mock(UserTransaction.class);
given(ut.getStatus()).willReturn(Status.STATUS_NO_TRANSACTION, Status.STATUS_ACTIVE);
JtaTransactionManager ptm = newJtaTransactionManager(ut);
assertFalse(TransactionSynchronizationManager.isSynchronizationActive());
TransactionStatus status = ptm.getTransaction(new DefaultTransactionDefinition());
assertTrue(TransactionSynchronizationManager.isSynchronizationActive());
// first: rollback
ptm.rollback(status);
assertFalse(TransactionSynchronizationManager.isSynchronizationActive());
try {
// second: commit attempt
ptm.commit(status);
fail("Should have thrown IllegalTransactionStateException");
}
catch (IllegalTransactionStateException ex) {
// expected
}
verify(ut).begin();
verify(ut).rollback();
}
示例6: testWithJtaTxManagerAndNonSpringTxManager
import org.springframework.transaction.jta.JtaTransactionManager; //导入方法依赖的package包/类
@Test
public void testWithJtaTxManagerAndNonSpringTxManager() throws java.sql.SQLException {
Environment original = sqlSessionFactory.getConfiguration().getEnvironment();
MockDataSource mockDataSource = new MockDataSource();
mockDataSource.setupConnection(createMockConnection());
Environment nonSpring = new Environment("non-spring", new ManagedTransactionFactory(), mockDataSource,null);
sqlSessionFactory.getConfiguration().setEnvironment(nonSpring);
JtaTransactionManager jtaManager = new JtaTransactionManager(new MockUserTransaction());
DefaultTransactionDefinition txDef = new DefaultTransactionDefinition();
txDef.setPropagationBehaviorName("PROPAGATION_REQUIRED");
TransactionStatus status = jtaManager.getTransaction(txDef);
try {
session = SqlSessionUtils.getSqlSession(sqlSessionFactory);
session.getMapper(TestMapper.class).findTest();
// Spring is not managing SqlSession, so commit is needed
session.commit(true);
SqlSessionUtils.closeSqlSession(session, sqlSessionFactory);
jtaManager.commit(status);
// assume a real JTA tx would enlist and commit the JDBC connection
assertNoCommitJdbc();
assertCommitSession();
MockConnection mockConnection = (MockConnection) mockDataSource.getConnection();
assertEquals("should call commit on Connection", 0, mockConnection.getNumberCommits());
assertEquals("should not call rollback on Connection", 0, mockConnection.getNumberRollbacks());
assertEquals("should not call DataSource.getConnection()", 0, dataSource.getConnectionCount());
} finally {
SqlSessionUtils.closeSqlSession(session, sqlSessionFactory);
sqlSessionFactory.getConfiguration().setEnvironment(original);
// null the connection since it was not used
// this avoids failing in validateConnectionClosed()
connection = null;
}
}
示例7: testWithJtaTxManagerAndNonSpringTxManager
import org.springframework.transaction.jta.JtaTransactionManager; //导入方法依赖的package包/类
@Test
public void testWithJtaTxManagerAndNonSpringTxManager() throws java.sql.SQLException {
Environment original = sqlSessionFactory.getConfiguration().getEnvironment();
MockDataSource mockDataSource = new MockDataSource();
mockDataSource.setupConnection(createMockConnection());
Environment nonSpring = new Environment("non-spring", new ManagedTransactionFactory(), mockDataSource);
sqlSessionFactory.getConfiguration().setEnvironment(nonSpring);
JtaTransactionManager jtaManager = new JtaTransactionManager(new MockUserTransaction());
DefaultTransactionDefinition txDef = new DefaultTransactionDefinition();
txDef.setPropagationBehaviorName("PROPAGATION_REQUIRED");
TransactionStatus status = jtaManager.getTransaction(txDef);
try {
session = SqlSessionUtils.getSqlSession(sqlSessionFactory);
session.getMapper(TestMapper.class).findTest();
// Spring is not managing SqlSession, so commit is needed
session.commit(true);
SqlSessionUtils.closeSqlSession(session, sqlSessionFactory);
jtaManager.commit(status);
// assume a real JTA tx would enlist and commit the JDBC connection
assertNoCommitJdbc();
assertCommitSession();
MockConnection mockConnection = (MockConnection) mockDataSource.getConnection();
assertEquals("should call commit on Connection", 0, mockConnection.getNumberCommits());
assertEquals("should not call rollback on Connection", 0, mockConnection.getNumberRollbacks());
assertEquals("should not call DataSource.getConnection()", 0, dataSource.getConnectionCount());
} finally {
SqlSessionUtils.closeSqlSession(session, sqlSessionFactory);
sqlSessionFactory.getConfiguration().setEnvironment(original);
// null the connection since it was not used
// this avoids failing in validateConnectionClosed()
connection = null;
}
}