首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > Java Web开发 >

Log4j有关问题求助!

2011-12-24 
Log4j问题求助!!Struts包中不是已经包含commons.logging.jar这个文件了吗为什么还报下面的异常java.lang.C

Log4j问题求助!!
Struts包中不是已经包含commons.logging.jar这个文件了吗
为什么还报下面的异常
java.lang.ClassNotFoundException:  
at   java.lang.Class.forName0(Native   Method)
at   java.lang.Class.forName(Class.java:169)
at   org.apache.commons.logging.impl.LogFactoryImpl$1.run(LogFactoryImpl.java:447)
at   java.security.AccessController.doPrivileged(Native   Method)
at   org.apache.commons.logging.impl.LogFactoryImpl.loadClass(LogFactoryImpl.java:435)
at   org.apache.commons.logging.impl.LogFactoryImpl.getLogConstructor(LogFactoryImpl.java:376)
at   org.apache.commons.logging.impl.LogFactoryImpl.newInstance(LogFactoryImpl.java:529)
at   org.apache.commons.logging.impl.LogFactoryImpl.getInstance(LogFactoryImpl.java:235)
at   org.apache.commons.logging.impl.LogFactoryImpl.getInstance(LogFactoryImpl.java:209)
at   org.apache.commons.logging.LogFactory.getLog(LogFactory.java:351)
at   org.apache.struts.action.ActionServlet. <clinit> (ActionServlet.java:226)
at   sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native   Method)
at   sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
at   sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
at   java.lang.reflect.Constructor.newInstance(Constructor.java:513)
at   java.lang.Class.newInstance0(Class.java:355)
at   java.lang.Class.newInstance(Class.java:308)
at   org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1104)
at   org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:981)
at   org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:4044)
at   org.apache.catalina.core.StandardContext.start(StandardContext.java:4350)
at   org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:761)
at   org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:741)
at   org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525)
at   org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:825)
at   org.apache.catalina.startup.HostConfig.deployWARs(HostConfig.java:714)
at   org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:490)
at   org.apache.catalina.startup.HostConfig.start(HostConfig.java:1138)
at   org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311)
at   org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:120)
at   org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1023)
at   org.apache.catalina.core.StandardHost.start(StandardHost.java:719)
at   org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1015)
at   org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443)
at   org.apache.catalina.core.StandardService.start(StandardService.java:448)
at   org.apache.catalina.core.StandardServer.start(StandardServer.java:710)
at   org.apache.catalina.startup.Catalina.start(Catalina.java:552)
at   sun.reflect.NativeMethodAccessorImpl.invoke0(Native   Method)
at   sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at   sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at   java.lang.reflect.Method.invoke(Method.java:597)
at   org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288)
at   org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413)
我在action中写入下内容:
import   org.apache.commons.logging.Log;
import   org.apache.commons.logging.LogFactory;


Log   log=LogFactory.getLog(this.getClass());
log.debug( "This   is   a   debug   message! ");
log.trace( "This   is   a   trace   message! ");
log.info( "This   is   a   info   message! ");
log.warn( "This   is   a   warn   message! ");
log.error( "This   is   a   error   message ");
log.fatal( "This   is   a   fatal   message ");

在commons-logging.properties中
    org.apache.commons.logging.Log
      =org.apache.commons.logging.impl.Log4JCategoryLog;
  log4j.rootLogger=INFO,console,file
      #   define   a   appender   named   console,which   is   set   to   be   a   ConsoleAppender
            log4j.appender.console=org.apache.log4j.ConsoleAppender
              #   define   a   appender   named   file,which   is   set   to   be   a   RollingFileAppender
            log4j.appender.file=org.apache.log4j.RollingFileAppender
            log4j.appender.file.File=log.txt
            log4j.appender.console.layout=org.apache.log4j.SimpleLayout
           
              #   Assign   a   PatternLayout   to   file   appender
              log4j.appender.file.layout=org.apache.log4j.PatternLayout
            log4j.appender.file.layout.ConversionPattern=%t   %p-   %m%n


[解决办法]
LogFactory.getLog(this.getClass());好像不是log4j
Logger log = Logger.getLogger(this.getClass());

热点排行