请勿使用 WebLogic TransactionManager 对象

此规则会检测是否在 Java 文件中使用了 TranasctionManager 对象。 查看 WebSphere Application Server 文档中的 JTA 支持主题。

会检测到下列情况:

  1. 字段声明(对象级别)
    例如:private TransactionManager tmgr ;

  2. 方法变量示例:
    private void doX(){
        TransactionManager tmgr;
    }

  3. 强制类型转换表达式示例:
    TransactionManager t = (TransactionManager) someOtherObject;

  4. 字符串字面值使用示例:
    String s = "weblogic.transaction.TransactionManager";
    or String s = "weblogic.transaction.TransactionManager";
    or TransactionManager mgr = ctx.lookup("weblogic.transaction.TransactionManager")
    or TransactionManager mgr = ctx.lookup("javax.transaction.TransactionManager")

  5. 方法调用示例:
    TransactionManager t = TransactionHelper.getTransactionManager();
    or TransactionManager t = TxHelper.getTransactionManager();

如果对象用作限定名(例如 weblogic.transaction.TransactionManagerjavax.transaction.TransactionManager),那么可检测到该对象。

如果下列任何一个 import 语句存在,那么用作简单名称(例如 Transaction)也可检测到该对象:
import weblogic.transaction.*;

import weblogic.transaction.TransactionManager;

import javax.transaction.*;

import javax.transaction.TransactionManager;