2011-06-29 11 views
4

私が取り組んでいるJava Webプロジェクトにログを追加しています。私は理解できないというエラーに遭遇しました。log4j設定ファイルを読み込めませんでした

私はTomcatのから取得していますエラーがある:私は私のウェブアプリケーション// WEB-INF /クラスフォルダに見ると

@RemotingInclude 
public UserAccount save(UserAccount dataObject) 
{ 
    PropertyConfigurator.configure("log4j.properties"); 
    logger.debug(dataObject.toString()); 

    return dao.save(dataObject); 
} 


log4j:ERROR Could not read configuration file [log4j.properties]. java.io.FileNotFoundException: log4j.properties (No such file or directory)

私は私のクラスでは、この単純な方法を持っています私は私のlog4j.propertiesファイルが表示されます。 Tomcatサーバーに展開してTomcatを再起動すると、自分のadmin.logファイルが作成されていますが、何も書き込まれません。上記の方法を打った後でさえ。これに関する助けがあれば大歓迎です。 Log4jのをブートストラップのアプローチが間違っていること

log4j.appender.AdminFileAppender=org.apache.log4j.FileAppender 
log4j.appender.AdminFileAppender.File=admin.log 
log4j.appender.AdminFileAppender.layout=org.apache.log4j.PatternLayout 
log4j.appender.AdminFileAppender.layout.ConversionPattern= %-4r [%t] %-5p %c %x - %m%n. 
log4j.appender.ReportFileAppender=org.apache.log4j.FileAppender 
log4j.appender.ReportFileAppender.File=report.log 
log4j.appender.ReportFileAppender.layout=org.apache.log4j.PatternLayout 
log4j.appender.ReportFileAppender.layout.ConversionPattern= %-4r [%t] %-5p %c %x - %m%n 
log4j.logger.com.rottmanj.services=WARN,AdminFileAppender 

答えて

1

これは私のlog4j.propertiesファイルの現在の内容です。

import org.apache.log4j.Logger; 

public class MyService { 

    public UserAccount save(UserAccount dataObject) { 
     logger.debug(dataObject.toString()); 

     return dao.save(dataObject); 

    } 

    private static Logger logger = Logger.getLogger(MyService.class); 

} 

Log4jのは、自動的にクラスパスのルートにlog4j.propertiesのルックアップします。この方法:これは通常、実装されている方法です。

+0

それは私の問題を修正しました、ありがとうAlfredo。 – rottmanj

+0

以下のコードをすべてのクラスファイルに入れるか、メインファイルだけを置く必要がありますか? public UserAccount save(UserAccountデータオブジェクト){ logger.debug(dataObject.toString()); return dao.save(dataObject); } – Siddharth