Я получаю исключение NoClassDefFoundError
на org.apache.commons.logging.LogFactory
после того, как я уже создал экземпляр. Я могу просто создать объект LogFactory
и получить от него экземпляр org.apache.commons.logging.Log
, но при создании объекта типа org.apache.axis.description.TypeDesc
выдается NoClassDefFoundError
, когда этот класс пытается получить экземпляр org.apache.commons.logging.Log
из LogFactory
. Похоже, что исключение должно быть выдано в строке 284. (?)
Вот мой код (строки DtUiLoggingRequest с 282 по 294);
log.debug("vvvvvvvvvvvvvvvv");
org.apache.commons.logging.LogFactory logFactory = (org.apache.commons.logging.LogFactory)LogFactory.getFactory();
Log myLog = LogFactory.getLog(DtUiLoggingRequest.class.getName());
log.debug(logFactory.getClass().getName());
log.debug(myLog.getClass().getName());
myLog.debug("This is coming from 'myLog'");
log.debug("^^^^^^^^^^^^^^^^");
typeDesc = new org.apache.axis.description.TypeDesc(DtUiLoggingRequest.class);
Вот что говорит журнал;
DEBUG 2012-02-23 09:32:08,739 vvvvvvvvvvvvvvvv
DEBUG 2012-02-23 09:32:08,739 org.apache.commons.logging.impl.LogFactoryImpl
DEBUG 2012-02-23 09:32:08,739 org.apache.commons.logging.impl.Log4JLogger
DEBUG 2012-02-23 09:32:08,739 ^^^^^^^^^^^^^^^^
ERROR 2012-02-23 09:32:08,739 Exception Details:
java.lang.NoClassDefFoundError: org.apache.commons.logging.LogFactory
at org.apache.axis.components.logger.LogFactory.class$(LogFactory.java:45)
at org.apache.axis.components.logger.LogFactory$1.run(LogFactory.java:45)
at java.security.AccessController.doPrivileged(Native Method)
at org.apache.axis.components.logger.LogFactory.getLogFactory(LogFactory.java:41)
at org.apache.axis.components.logger.LogFactory.<clinit>(LogFactory.java:33)
at org.apache.axis.description.TypeDesc.<clinit>(TypeDesc.java:61)
at com.symantec.cas.ucf.sensors.DtUiLoggingRrequest.initTypeDesc(DtUiLoggingRequest.java:294)
at com.symantec.cas.ucf.sensors.sap.DtUiLoggingRequest.<init>(DtUiLoggingRequest.java:58)
at com.symantec.cas.ucf.sensors.sap.SapSensor.OpenDevice(Sensor.java:151)
at com.symantec.cas.ucf.collector.SensorJob.openSensor(SensorJob.java:156)
at com.symantec.cas.ucf.collector.SensorJob.run(SensorJob.java:290)
at java.lang.Thread.run(Thread.java:662)