Please modify the statement
     log4j.logger.voicemail=INFO, A1, A2
to
     log4j.category.voicemail=INFO, A1, A2
take a try!
good luck!

解决方案 »

  1.   

    to goodsong(风卷残云)测试代码
    test.jsp
    <%@ page contentType="text/html; charset=GB2312" %>
    <%@ page import="org.apache.log4j.*" %>
    <%       
    Logger logger1 = Logger.getLogger("voicemail");
    logger1.fatal("==========fatal");
    logger1.error("=========error");
    logger1.warn("==========warn");
    logger1.info("========info");
    logger1.debug("==========debug");
    %>
    <h1> Hi</h1>配置文件
    #log4j.logger.voicemail=INFO, A1, A2
    log4j.Category.voicemail=INFO, A1, A2log4j.appender.A1=org.apache.log4j.ConsoleAppender 
    log4j.appender.A1.layout=org.apache.log4j.PatternLayout 
    log4j.appender.A1.layout.ConversionPattern=%-d{yyyy-MM-dd HH:mm:ss} [%c]-[%p] %m%n log4j.appender.A2=org.apache.log4j.DailyRollingFileAppender
    log4j.appender.A2.File=E:/WorkOnCVS/voicemail/Programe/UserService/logs/voicemail.log
    log4j.appender.A2.DatePattern='.'yyyy-MM-dd'# Appends to the log file if it already exists.
    log4j.appender.A2.Append=truelog4j.appender.A2.layout=org.apache.log4j.PatternLayout
    log4j.appender.A2.layout.ConversionPattern=[%-5p] %d{yyyy-MM-dd HH:mm:ss,SSS} method:%l%n%m%n后台跑错
    log4j:WARN No appenders could be found for logger (root).
    log4j:WARN Please initialize the log4j system properly.
      

  2.   

    PropertyConfigurator.configure ( "配置文件" ) ;
      

  3.   

    多谢楼上!我已经写了servlet代码如下
    package com.acti.voicemail.servlet;import org.apache.log4j.*;
    import javax.servlet.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;public class Log4jInit extends HttpServlet {
    public void init() {
    String prefix =  getServletContext().getRealPath("/");
    String file = getInitParameter("log4j");
    // if the log4j-init-file is not set, then no point in trying
    System.out.println("................log4j start");
    if(file != null) {
    PropertyConfigurator.configure(prefix+file);
    }  
    } public void doGet(HttpServletRequest req, HttpServletResponse res) {  }
    }
      

  4.   

    log4j.logger.voicemail=INFO, A1, A2
    -----------------------
    你的配置文件中,appender A1,A2是给名为voicemail的logger配置的吧?
    而你在程序中使用的是rootLogger,换成voicemail试试
    and
    #log4j.logger.voicemail=INFO, A1, A2
    log4j.Category.voicemail=INFO, A1, A2
    ---------------------
    中的Category应该是category,注意大小写
      

  5.   

    这样试试:
    log4j.rootLogger=INFO, A1 , R
    log4j.appender.A1=org.apache.log4j.ConsoleAppender
    log4j.appender.A1.layout=org.apache.log4j.PatternLayout
    log4j.appender.A1.layout.ConversionPattern=%-d{yyyy-MM-dd HH:mm:ss} [%c]-[%p] %m%n
    log4j.appender.R=org.apache.log4j.RollingFileAppender
    log4j.appender.R.File=log4j.log
    log4j.appender.R.MaxFileSize=100KB
    log4j.appender.R.MaxBackupIndex=1
    log4j.appender.R.layout=org.apache.log4j.PatternLayout
    log4j.appender.R.layout.ConversionPattern=%p %t %c - %m%n
      

  6.   


    第一你的 log4j.properties 有错
    log4j.appender.A2.DatePattern='.'yyyy-MM-dd'---〉 log4j.appender.A2.DatePattern='.'yyyy-MM-dd 
    多廖一个' 2:
    test.jsp
    <%@ page contentType="text/html; charset=GB2312" %>
    <%@ page import="org.apache.log4j.*" %>
    <%       
    Logger logger1 = Logger.getLogger("voicemail");PropertyConfigurator.configure ("E:\\Jprogram\\Tomcat 4.1\\webapps\\log4j.properties") ;//////////////加上这个
    logger1.fatal("==========fatal");
    logger1.error("=========error");
    logger1.warn("==========warn");
    logger1.info("========info");
    logger1.debug("==========debug");
    %>
    <h1> Hi</h1>肯定可以
      

  7.   

    PropertyConfigurator.configure ("E:\\Jprogram\\Tomcat 4.1\\webapps\\log4j.properties") ;//////////////加上这个 自己的log4j.properties 的路径