This rule detects the use of a TransactionSynchronizationRegistry objects in a Java file. Review the JTA support topic in the WebSphere Application Server documentation.
The following cases are detected:
Field declaration, object level example:
private TransactionSynchronizationRegistry reg ;
Method variable example:
private void doX(){
TransactionSynchronizationRegistry reg;
}
String literal usage examples:
String s = "java:comp/TransactionSynchronizationRegistry";
or String s = "javax/transaction/TransactionSynchronizationRegistry";
or String s = "weblogic/transaction/TransactionSynchronizationRegistry";
or TransactionManager mgr = ctx.lookup("java:comp/TransactionSynchronizationRegistry")
or TransactionManager mgr = ctx.lookup("javax/transaction/TransactionSynchronizationRegistry")
or TransactionManager mgr = ctx.lookup("weblogic/transaction/TransactionSynchronizationRegistry")
The object can be detected if it is used as a qualified name, such as javax.transaction.TransactionSynchronizationRegistry.
The object can also be detected is used as a simple name,
such as TransactionSynchronizationRegistry,
if any of the following import statements exist:
import javax.transaction.*;
or
import javax.transaction.TransactionSynchronizationRegistry;