2017-07-27 13 views
1

HtmlUnitを使用しているときにApacheのHttpClientの特定のログを抑制したい。私はHtmlUnit 2.27をJDKロギングで使用しています。 'org.apache.http.wire'のレベルを明示的にOffに設定するたびに、HtmlUnitはレベルをnullにリセットします。例えばHtmlUnitを抑制するApacheのログ

//turn on all logging 
for(java.util.logging.Handler item : Logger.getLogger("").getHandlers()) { 
    item.setLevel(java.util.logging.Level.ALL); 
} 
Logger.getLogger("").setLevel(java.util.logging.Level.FINE); 

//suppress apache logs 
java.util.logging.Logger.getLogger("org.apache.http.wire").setLevel(java.util.logging.Level.OFF); 

//CloseableHttpClient httpclient = HttpClients.createDefault(); 

(new WebClient()).getPage("https://publicobject.com/helloworld.txt"); 
System.out.println("org.apache.http.wire=" + java.util.logging.Logger.getLogger("org.apache.http.wire").getLevel()); 

この戻り値:

org.apache.http.wire=null 

I直接アパッチのHttpClientを使用するか、HtmlUnit前に参照のApache HttpClientを(すなわちコメント解除CloseableHttpClientライン)場合には、ロギングが抑制され、出力リターン:

org.apache.http.wire=OFF 

抑制する方法上の任意のアイデア「かg.apache.http.wire "は、HtmlUnitの前にCloseableHttpClientを参照するというハッキングなしでログに記録しますか?

答えて

0

単純な修正:java.util.loggingを使用しないでください。 log4jを使用するようにコモンズロギングを切り替えると、すべてが期待通りに機能しました。私はそれがjava.util.loggingとHtmlUnitのバグだと仮定します...

関連する問題