Perfect, /Bengt
2012/6/28 [email protected] <[email protected]> > Thanks for the update. I will update in pax logging. > > Regards > JB > > > -- > Jean-Baptiste Onofré > [email protected] > http://blog.nanthrax.net > Talend - http://wwx.talend.com > > > ----- Reply message ----- > From: "Bengt Rodehav" <[email protected]> > To: <[email protected]> > Subject: Karaf 2.2.8, Pax-Logging 1.6.7 and NTEventLogAppender > Date: Thu, Jun 28, 2012 4:26 pm > > > It turns out that in the latest vesion of log4j (1.2.17), two DLL's were > included: > > - NTEventLogAppender.dll > - NTEventLogAppender.amd64.dll > > If I put both of them in Karaf's lib folder it seems to work in both > Windows XP and Windows 7. I haven't seen any documentation regarding this > but I'll try this for now. > > /Bengt > > 2012/6/28 Bengt Rodehav <[email protected]> > >> Just verified that our previous custom Karaf distribution (which is based >> on Karaf 2.2.5) has the same problem on Windows 7. This is then clearly not >> an issue with Karaf 2.2.8. >> >> Still worth solving though... >> >> /Bengt >> >> 2012/6/28 Jean-Baptiste Onofré <[email protected]> >> >>> Good point Bengt, you are certainly right. >>> >>> Regards >>> JB >>> >>> >>> On 06/28/2012 01:20 PM, Bengt Rodehav wrote: >>> >>>> Hello JB, >>>> >>>> Just struck me that I'v recently changed to a computer running Windows 7 >>>> (used to run on Windows XP). When I install Karaf on Windows XP it works >>>> but when I install the same distribution on Windows 7 it doesn't work. >>>> My guess is that is has to do with the NTEventLogAppender.dll. Either it >>>> does not support Windows 7 or it has to be located somewhere else than >>>> in Karaf's lib folder. >>>> >>>> I would guess that if the loading of NTEventLogAppender.dll fails then >>>> the loading of the class org.apache.log4j.nt.__**NTEventLogAppender >>>> will >>>> >>>> also fail - thus the NoClassDefFoundError. >>>> >>>> /Bengt >>>> >>>> 2012/6/28 Jean-Baptiste Onofré <[email protected] <mailto:[email protected] >>>> >> >>>> >>>> >>>> Hi Bengt, >>>> >>>> It looks weird, but sounds like classloading change issue. >>>> >>>> I gonna try to reproduce and keep you posted. >>>> >>>> Regards >>>> JB >>>> >>>> >>>> On 06/28/2012 11:22 AM, Bengt Rodehav wrote: >>>> >>>> I'm currently updating our applications from using Karaf 2.2.5 >>>> to Karaf >>>> 2.2.8 and have problems initializing the log system. I use >>>> NTEventLogAppender in my org.ops4j.pax.logging.cfg, like this: >>>> >>>> /log4j.appender.nteventlog=__**org.apache.log4j.nt.__** >>>> NTEventLogAppender/ >>>> /log4j.appender.nteventlog.__**source=${nteventlog.source}/ >>>> /log4j.appender.nteventlog.__**layout=org.apache.log4j.__** >>>> PatternLayout/ >>>> /log4j.appender.nteventlog.__**layout.ConversionPattern=Time: >>>> >>>> %d{ISO8601}%n%nSeverity: %p%n%nThread: %t%n%n%m%n/ >>>> /log4j.appender.nteventlog.__**threshold=DEBUG/ >>>> >>>> >>>> >>>> It used to work fine but now I get this: >>>> >>>> /2012-06-28 10:12:36,259 | ERROR | s4j.pax.logging) | configadmin >>>> | ? ? | >>>> Unexpected >>>> problem executing task/ >>>> /java.lang.__**NoClassDefFoundError: Could not initialize class >>>> org.apache.log4j.nt.__**NTEventLogAppender/ >>>> /at java.lang.Class.forName0(__**Native Method)[:1.6.0_32]/ >>>> /at java.lang.Class.forName(Class.**__java:169)[:1.6.0_32]/ >>>> /at >>>> org.apache.log4j.__**OsgiThrowableRenderer.__**findClass(__** >>>> OsgiThrowableRenderer.java:__**224)[3:org.ops4j.pax.logging._** >>>> _pax-logging-service:1.6.7]/ >>>> /at >>>> org.apache.log4j.__**OsgiThrowableRenderer.__**formatElement(__* >>>> *OsgiThrowableRenderer.java:__**134)[3:org.ops4j.pax.logging._** >>>> _pax-logging-service:1.6.7]/ >>>> /at >>>> org.apache.log4j.__**OsgiThrowableRenderer.__**doRender(__** >>>> OsgiThrowableRenderer.java:__**105)[3:org.ops4j.pax.logging._** >>>> _pax-logging-service:1.6.7]/ >>>> /at >>>> org.apache.log4j.__**OsgiThrowableRenderer.__**doRender(__** >>>> OsgiThrowableRenderer.java:52)**__[3:org.ops4j.pax.logging.** >>>> pax-__logging-service:1.6.7]/ >>>> /at >>>> org.apache.log4j.spi.__**ThrowableInformation.__** >>>> getThrowableStrRep(__**ThrowableInformation.java:89)[** >>>> __3:org.ops4j.pax.logging.pax-**__logging-service:1.6.7]/ >>>> /at >>>> org.apache.log4j.spi.__**LoggingEvent.__**getThrowableStrRep(__* >>>> *LoggingEvent.java:413)[3:org._**_ops4j.pax.logging.pax-** >>>> logging-__service:1.6.7]/ >>>> /at >>>> org.apache.log4j.__**WriterAppender.subAppend(__** >>>> WriterAppender.java:313)[3:__**org.ops4j.pax.logging.pax-__** >>>> logging-service:1.6.7]/ >>>> /at >>>> org.apache.log4j.__**WriterAppender.append(__** >>>> WriterAppender.java:162)[3:__**org.ops4j.pax.logging.pax-__** >>>> logging-service:1.6.7]/ >>>> /at >>>> org.apache.log4j.__**AppenderSkeleton.doAppend(__** >>>> AppenderSkeleton.java:251)[3:_**_org.ops4j.pax.logging.pax-__** >>>> logging-service:1.6.7]/ >>>> /at >>>> org.apache.log4j.helpers.__**AppenderAttachableImpl.__** >>>> appendLoopOnAppenders(__**AppenderAttachableImpl.java:__** >>>> 66)[3:org.ops4j.pax.logging.__**pax-logging-service:1.6.7]/ >>>> /at >>>> org.apache.log4j.Category.__**callAppenders(Category.java:__** >>>> 193)[3:org.ops4j.pax.logging._**_pax-logging-service:1.6.7]/ >>>> /at >>>> org.apache.log4j.Category.__**forcedLog(Category.java:365)[_** >>>> _3:org.ops4j.pax.logging.pax-_**_logging-service:1.6.7]/ >>>> /at >>>> org.apache.log4j.Category.log(**__Category.java:772)[3:org.__** >>>> ops4j.pax.logging.pax-logging-**__service:1.6.7]/ >>>> /at >>>> org.ops4j.pax.logging.service.**__internal.PaxLoggerImpl.** >>>> error(__PaxLoggerImpl.java:**159)[3:org.__ops4j.pax.** >>>> logging.pax-logging-__service:**1.6.7]/ >>>> /at >>>> org.ops4j.pax.logging.service.**__internal.__** >>>> PaxLoggingServiceImpl.log(__**PaxLoggingServiceImpl.java:__** >>>> 148)[3:org.ops4j.pax.logging._**_pax-logging-service:1.6.7]/ >>>> /at >>>> org.ops4j.pax.logging.service.**__internal.__** >>>> PaxLoggingServiceImpl.access$_**_000(PaxLoggingServiceImpl.__** >>>> java:45)[3:org.ops4j.pax.__**logging.pax-logging-service:1.**__6.7]/ >>>> /at >>>> org.ops4j.pax.logging.service.**__internal.__** >>>> PaxLoggingServiceImpl$__**1ManagedPaxLoggingService.log(** >>>> __PaxLoggingServiceImpl.java:_**_322)[3:org.ops4j.pax.logging.** >>>> __pax-logging-service:1.6.7]/ >>>> /at >>>> org.apache.felix.cm.impl.__**ConfigurationManager.log(__** >>>> ConfigurationManager.java:915)**__[5:org.apache.felix.__** >>>> configadmin:1.2.8]/ >>>> /at >>>> org.apache.felix.cm.impl.__**ConfigurationManager.__** >>>> handleCallBackError(__**ConfigurationManager.java:__** >>>> 1028)[5:org.apache.felix.__**configadmin:1.2.8]/ >>>> /at >>>> org.apache.felix.cm.impl.__**ConfigurationManager$__** >>>> UpdateConfiguration.run(__**ConfigurationManager.java:__** >>>> 1495)[5:org.apache.felix.__**configadmin:1.2.8]/ >>>> /at >>>> org.apache.felix.cm.impl.__**UpdateThread.run(UpdateThread.** >>>> __java:104)[5:org.apache.**felix.__configadmin:1.2.8]/ >>>> /at java.lang.Thread.run(Thread.__**java:662)[:1.6.0_32]/ >>>> >>>> >>>> >>>> For some reason the class >>>> "org.apache.log4j.nt.__**NTEventLogAppender". >>>> >>>> Looking at the stack trace it seems like the handling of the >>>> configuration is done by the pax-logging-service which also >>>> has this >>>> class in it's own bundle. The NTEventLogAppender.dll is also >>>> required >>>> and is located in Karaf's "lib" directory (as it was in the >>>> past). >>>> >>>> Can someone shed some light on this? I'm not sure if it's a >>>> Karaf or >>>> Pax-logging issue (or simply a mistake I've made)? >>>> >>>> /Bengt >>>> >>>> >>>> >>>> -- >>>> Jean-Baptiste Onofré >>>> [email protected] <mailto:[email protected]> >>>> >>>> http://blog.nanthrax.net >>>> Talend - http://www.talend.com >>>> >>>> >>>> >>>> >>> -- >>> Jean-Baptiste Onofré >>> [email protected] >>> http://blog.nanthrax.net >>> Talend - http://www.talend.com >>> >>> >>> >> >
