Package org.springframework.transaction.support

Examples of org.springframework.transaction.support.TransactionTemplate.execute()


    final TransactionTemplate tt = new TransactionTemplate(ptm);
    tt.setPropagationBehavior(TransactionDefinition.PROPAGATION_REQUIRES_NEW);

    assertTrue("Hasn't thread session", !TransactionSynchronizationManager.hasResource(sf));
    try {
      tt.execute(new TransactionCallback() {
        public Object doInTransaction(TransactionStatus status) {
          org.hibernate.Session outerSession = SessionFactoryUtils.getSession(sf, false);
          assertSame(session1, outerSession);
          SessionHolder holder = (SessionHolder) TransactionSynchronizationManager.getResource(sf);
          assertTrue("Has thread session", holder != null);
View Full Code Here


        public Object doInTransaction(TransactionStatus status) {
          org.hibernate.Session outerSession = SessionFactoryUtils.getSession(sf, false);
          assertSame(session1, outerSession);
          SessionHolder holder = (SessionHolder) TransactionSynchronizationManager.getResource(sf);
          assertTrue("Has thread session", holder != null);
          tt.execute(new TransactionCallback() {
            public Object doInTransaction(TransactionStatus status) {
              return null;
            }
          });
          return null;
View Full Code Here

    final TransactionTemplate tt = new TransactionTemplate(ptm);
    tt.setPropagationBehavior(TransactionDefinition.PROPAGATION_REQUIRES_NEW);

    assertTrue("Hasn't thread session", !TransactionSynchronizationManager.hasResource(sf));
    try {
      tt.execute(new TransactionCallback() {
        public Object doInTransaction(TransactionStatus status) {
          org.hibernate.Session outerSession = SessionFactoryUtils.getSession(sf, false);
          assertSame(session1, outerSession);
          SessionHolder holder = (SessionHolder) TransactionSynchronizationManager.getResource(sf);
          assertTrue("Has thread session", holder != null);
View Full Code Here

          org.hibernate.Session outerSession = SessionFactoryUtils.getSession(sf, false);
          assertSame(session1, outerSession);
          SessionHolder holder = (SessionHolder) TransactionSynchronizationManager.getResource(sf);
          assertTrue("Has thread session", holder != null);
          try {
            tt.execute(new TransactionCallback() {
              public Object doInTransaction(TransactionStatus status) {
                org.hibernate.Session innerSession = SessionFactoryUtils.getSession(sf, false);
                assertSame(session2, innerSession);
                HibernateTemplate ht = new HibernateTemplate(sf);
                ht.setFlushMode(HibernateTemplate.FLUSH_EAGER);
View Full Code Here

    JtaTransactionManager tm = new JtaTransactionManager(ut);
    TransactionTemplate tt = new TransactionTemplate(tm);
    tt.setPropagationBehavior(TransactionDefinition.PROPAGATION_SUPPORTS);
    assertTrue("Hasn't thread session", !TransactionSynchronizationManager.hasResource(sf));

    tt.execute(new TransactionCallback() {
      public Object doInTransaction(TransactionStatus status) {
        assertTrue("Hasn't thread session", !TransactionSynchronizationManager.hasResource(sf));
        assertTrue("Is not new transaction", !status.isNewTransaction());
        assertFalse(TransactionSynchronizationManager.isCurrentTransactionReadOnly());
        assertFalse(TransactionSynchronizationManager.isActualTransactionActive());
View Full Code Here

          public Object doInHibernate(org.hibernate.Session session) {
            return null;
          }
        });
        assertTrue("Has thread session", TransactionSynchronizationManager.hasResource(sf));
        tt2.execute(new TransactionCallback() {
          public Object doInTransaction(TransactionStatus status) {
            HibernateTemplate ht = new HibernateTemplate(sf);
            ht.setFlushMode(HibernateTemplate.FLUSH_EAGER);
            return ht.executeFind(new HibernateCallback() {
              public Object doInHibernate(org.hibernate.Session session) {
View Full Code Here

    assertTrue("JTA synchronizations not active", !TransactionSynchronizationManager.isSynchronizationActive());

    TransactionTemplate tt = new TransactionTemplate(new JtaTransactionManager(tm));
    tt.setPropagationBehavior(TransactionDefinition.PROPAGATION_SUPPORTS);
    tt.setReadOnly(true);
    tt.execute(new TransactionCallbackWithoutResult() {
      protected void doInTransactionWithoutResult(TransactionStatus status) {
        assertTrue("JTA synchronizations active", TransactionSynchronizationManager.isSynchronizationActive());
        for (int i = 0; i < 5; i++) {
          ht.executeFind(new HibernateCallback() {
            public Object doInHibernate(org.hibernate.Session sess) {
View Full Code Here

        }
      });
    }

    TransactionTemplate tt = new TransactionTemplate(new JtaTransactionManager(ut));
    tt.execute(new TransactionCallbackWithoutResult() {
      protected void doInTransactionWithoutResult(TransactionStatus status) {
        for (int i = 2; i < 5; i++) {
          ht.executeFind(new HibernateCallback() {
            public Object doInHibernate(org.hibernate.Session sess) {
              assertTrue("Has thread session", TransactionSynchronizationManager.hasResource(sf));
View Full Code Here

  }

  public void testSavepoint() {
    TransactionTemplate tt = new TransactionTemplate(transactionManager);
    tt.setPropagationBehavior(TransactionTemplate.PROPAGATION_NESTED);
    tt.execute(new TransactionCallbackWithoutResult() {
      protected void doInTransactionWithoutResult(TransactionStatus status) {
        Person tony = new Person();
        tony.setFirstName("Tony");
        sharedEntityManager.merge(tony);
        Query q = sharedEntityManager.createQuery("select p from Person as p");
View Full Code Here

    Object result = tt.execute(new TransactionCallback() {
      public Object doInTransaction(TransactionStatus status) {
        assertFalse(TransactionSynchronizationManager.hasResource(factory));
        TransactionTemplate tt2 = new TransactionTemplate(transactionManager);
        tt2.setPropagationBehavior(TransactionDefinition.PROPAGATION_REQUIRES_NEW);
        return tt2.execute(new TransactionCallback() {
          public Object doInTransaction(TransactionStatus status) {
            return template.execute(new JpaCallback() {
              public Object doInJpa(EntityManager em2) {
                em2.flush();
                return l;
View Full Code Here

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.