It's not the same without you

Join the community to find out what other Atlassian users are discussing, debating and creating.

Atlassian Community Hero Image Collage

TransactionTemplate or @Transactional?

David Pinn Nov 25, 2012

Should I be using TransactionTemplate directly, or using @Transactional, when accessing ActiveObjects in an add-on?

The ActiveObjects doco mentions @Transactional, but the Stash SSH plugin uses TransactionTemplate, and I can't remember why.

1 answer

1 accepted

0 votes
Answer accepted
Tim Pettersen Nov 25, 2012

Hi David,

From a plugin you should be using TransactionTemplate (imported from SAL). It will do all the necessary plumbing to ensure your DB operations are performed transactionally.

As you mentioned the SshKeyServiceImpl from the SSH plugin is a good example of how to use it.

cheers,

Tim

David Pinn Nov 25, 2012

I suspected that was the case. So the approach described by the ActiveObjects doco is not right? It suggests using:

com.atlassian.activeobjects.external.TransactionalAnnotationProcessor

Tim Pettersen Nov 25, 2012

Actually digging into it a bit further looks like @Transactional would work too, though with slightly more overhead. Services marked with @Transactional will end up being wrapped in a dynamic proxy that uses TransactionTemplate (provided you have the right bean post-processors wired into your plugin), so either method is probably ok.

To be honest, I'd still be going with TransactionTemplate for the sake of simplicity and not tying yourself further to the AO library.

David Pinn Nov 25, 2012

You make a good point about independence from the AO library. Thanks mate.

Suggest an answer

Log in or Sign up to answer
This widget could not be displayed.
This widget could not be displayed.
Community showcase
Posted in United States

Topic Tuesday: Agile

Another week, another Topic Tuesday!  Agile has been on my mind a lot lately because I've seen good implementations and bad implementations, but now as a Jira admin it matters more to me whether...

37 views 0 0
View post

Community Events

Connect with like-minded Atlassian users at free events near you!

Find an event

Connect with like-minded Atlassian users at free events near you!

Unfortunately there are no Community Events near you at the moment.

Host an event

You're one step closer to meeting fellow Atlassian users at your local event. Learn more about Community Events

Events near you