[arquillian-issues] [JBoss JIRA] (ARQ-723) TransactionalWrapper.afterTest() ignores SessionContext.setRollbackOnly()

Aslak Knutsen (JIRA) jira-events at lists.jboss.org
Thu Apr 12 13:06:48 EDT 2012


     [ https://issues.jboss.org/browse/ARQ-723?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Aslak Knutsen updated ARQ-723:
------------------------------

    Fix Version/s: persistence_1.0.0.Alpha4
                       (was: persistence_1.0.0.next)

    
> TransactionalWrapper.afterTest() ignores SessionContext.setRollbackOnly()
> -------------------------------------------------------------------------
>
>                 Key: ARQ-723
>                 URL: https://issues.jboss.org/browse/ARQ-723
>             Project: Arquillian
>          Issue Type: Bug
>      Security Level: Public(Everyone can see) 
>          Components: Extension - Persistence
>    Affects Versions: persistence_1.0.0.Alpha3
>            Reporter: Juergen Zimmermann
>            Assignee: Bartosz Majsak
>             Fix For: persistence_1.0.0.Alpha4
>
>
> If a method is being tested that invokes SessionContext.setRollbackOnly(), then the commit mode doesn't work correctly, because doing a commit() after setRollbackOnly() will fail. Therefore, the method TransactionalWrapper.afterTest() should be implemented as follows:
> 	final TransactionMode mode = metadataProvider.get().getTransactionalMode();
> 	final UserTransaction trans = obtainTransaction();
> 	if (TransactionMode.COMMIT.equals(mode)) {
> 		if (Status.STATUS_MARKED_ROLLBACK.equals(trans.getStatus())) {
> 			trans.rollback();
> 		}
> 		else {
> 			trans.commit();
> 		}
> 	}
> 	else {
> 		trans.rollback();
> 	}

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.jboss.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        


More information about the arquillian-issues mailing list