@Transactional annotation will only work on interfaces?

According to https://developer.atlassian.com/server/framework/atlassian-sdk/getting-started-with-active-objects/, @Transactional annotation will only work on interfaces.
Since last updated was Dec 8, 2017, that statement is still valid?
Thanks in advance.

Hi @BIF01,

Looking at the documentation available that still does appear to be the case and the statement is still valid; there is no mention of that annotation working not on an interface. The class javadoc specifies:

Annotating methods of an interface with this annotation will make those methods run within a transaction provided by the host application.

I hope this answers your question :slight_smile:

Also to get more visibility on this (as this is specifically not Bitbucket product related) it may be good to ask this question in the Atlassian Developer Tools space with the plugin-sdk tag. That way the community members (or Atlassian team working in this area) more involved with the Atlassian Developer Tools and the plugin-sdk can help in answering your question further or provide more clarifications.

Christopher Kochovski
Bitbucket Developer

Quoting from https://developer.atlassian.com/server/framework/atlassian-sdk/getting-started-with-active-objects/#step-9---introduce-the-todo-service:

Doing by hand is going to be painful. So there is a declarative alternative, using the @Transactional annotation.

These annotations will only work on interfaces, so we won’t be able to apply it on our servlet.

We would to know if these annotations will work on classes, too.