此規則會偵測是否使用 org.apache.juli.logging.Log 和 org.apache.juli.logging.LogFactory 類別和方法。 這些記載方法在 WebSphere Traditional 或 Liberty 中無法使用,必須移轉。
當自動修復可用時,它將取代 org.apache.juli.logging.LogFactory 具有 java.util.logging.Logger -我知道 它也會將 Apache Tomcat 記載方法取代為 Java Logger.log(Level, message) 方法。
部分 Apache Tomcat 方法直接對映至已定義的 java.util.logging.Level . 對於無法直接對應的層級,您可以 自訂分析組態對話框中的記錄層級。
此對應表中顯示了自動固定替換。 在下表中,會傳遞 Throwable 作為第二個參數的記載方法,會以其對應項目的相同方式來對映。
| org.apache.juli.logging 方法 | java.util.logging 方法 | 可配置 |
|---|---|---|
| LogFactory.getLog(Class.class) | Logger.getLogger(Class.class.getName()) | 否 |
| LogFactory.getLog("log name") | Logger.getLogger("log name") | 否 |
| LogFactory.getInstance(Class.class) | Logger.getLogger(Class.class.getName()) | 否 |
| LogFactory.getInstance("log name") | Logger.getLogger("log name") | 否 |
| Log.fatal("mgs") | Logger.log(WsLevel.FATAL, "msg") | 是 |
| Log.error("msg") | Logger.log(Level.SEVERE, "msg") | 是 |
| Log.warn("msg") | Logger.log(Level.WARNING, "msg") | 否 |
| Log.info("msg") | Logger.log(Level.INFO, "msg") | 否 |
| Log.debug("msg") | Logger.log(WsLevel.DETAIL, "msg") | 是 |
| Log.trace("msg") | Logger.log(Level.FINE, "msg") | 是 |
例如,所建立的記載類別實例:
此範例顯示呼叫 org.apache.juli.logging.Log.error() 使用 Throwable 作為第二個參數。
org.apache.juli.logging.Log 類別中的方法具有類型為
java.lang.Object 的參數。
java.util.logging.Logger 類別中的方法具有類型為
java.lang.String 的參數。
如果您使用的參數類型不是 java.lang.String, 類型以外的參數,您可能需要執行額外的手動轉換,在參數中加入 toString( ) 到參數中。 將從 org.apache.juli.logging.Log 遷移到 java.util.logging.Logger.
如需相關資訊,請參閱下列的 Java 說明文件: