Hi Bengt,

sorry been very busy lately. I did give it a try but couldn't find a reason
why Log4j2 should be used or Pax Logging should be triggered to be
restarted. There isn't any reason for the pax web bundles to do so ... :/
sorry didn't get any further on this ..

regards, Achim




2016-07-11 14:47 GMT+02:00 Bengt Rodehav <[email protected]>:

> Did you have a chance to look at this Achim? If there is a problem with
> the pax-jetty feature it would be nice to have it fixed in Karaf 4.0.6
> which I understand is in the works.
>
> /Bengt
>
> 2016-07-07 9:13 GMT+02:00 Bengt Rodehav <[email protected]>:
>
>> OK - thanks Achim,
>>
>> /Bengt
>>
>> 2016-07-06 22:08 GMT+02:00 Achim Nierbeck <[email protected]>:
>>
>>> Hi Bengt,
>>>
>>> I'll try to find out if one of the bundles in that feature depends on
>>> log4j2 ... but I'm not aware of such a dependency.
>>>
>>> Your suspicion about dynamic loading of DLLs is correct in case of the
>>> location of the dll is inside of a bundle and does have dependencies to
>>> another dll. If it's a dll loaded via the root classloader that shouldn't
>>> be of an issue.
>>>
>>> regards, Achim
>>>
>>>
>>> 2016-07-04 16:04 GMT+02:00 Bengt Rodehav <[email protected]>:
>>>
>>>> Another theory: Looking at the stack trace this seems to be triggered
>>>> by a configuration update. Could the problem be that Pax-logging is trying
>>>> to load the DLL again and failing since it is already loaded? Perhaps the
>>>> initial load works but subsequent configuration updates does not?
>>>>
>>>> I tried to verify this...
>>>>
>>>> After successful start of Karaf (after step 9 in my previous post), I
>>>> edit org.ops4j.pas.logging.cfg (by changing the root logger between INFO
>>>> and DEBUG). This causes no error.
>>>>
>>>> But after having installed feature pax-jetty (after step 10 in my
>>>> previous post), every change in org.ops4j.pas.logging.cfg causes the same
>>>> error to appear (the stack trace included in my previous post).
>>>>
>>>> It's as if installing the pax-jetty feature takes gives control of
>>>> org.ops4j.pas.logging.cfg to someone who cannot load the DLL. I have no
>>>> idea how this could happen.
>>>>
>>>> Anyone else has an idea?
>>>>
>>>> /Bengt
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> /Bengt
>>>>
>>>> 2016-07-04 15:51 GMT+02:00 Bengt Rodehav <[email protected]>:
>>>>
>>>>> A theory: Could one of the bundles installed by feature pax-jetty be
>>>>> using log4j 2.x directly without using Pax-logging? If so, would it too 
>>>>> try
>>>>> to read the log4j configuration file? I guess it would fail to load the 
>>>>> DLL
>>>>> since it is probably not compatible with log4j 2.x.
>>>>>
>>>>> Could this happen? If so, how can I find out which bundle?
>>>>>
>>>>> /Bengt
>>>>>
>>>>> 2016-07-04 15:15 GMT+02:00 Bengt Rodehav <[email protected]>:
>>>>>
>>>>>> Back to the Karaf mailing list....
>>>>>>
>>>>>> I can actually get this problem on a standard vanilla Karaf 4.0.5. It
>>>>>> seems to be triggered when installing the feature pax-jetty.
>>>>>>
>>>>>> *1. Install standard Karaf 4.0.5*
>>>>>>
>>>>>> *2. Replace org.ops4j.pax.logging.cfg with the following:*
>>>>>>
>>>>>> log4j.rootLogger=INFO, stdout
>>>>>>
>>>>>> # CONSOLE appender
>>>>>> log4j.appender.stdout=org.apache.log4j.ConsoleAppender
>>>>>> log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
>>>>>> log4j.appender.stdout.layout.ConversionPattern=%d{ISO8601} | %-5.5p |
>>>>>> %-16.16t | %-32.32c{1} | %-32.32C %4L | %m%n
>>>>>> log4j.appender.stdout.threshold=ERROR
>>>>>>
>>>>>> # Windows event log
>>>>>> log4j.appender.nteventlog=org.apache.log4j.nt.NTEventLogAppender
>>>>>> log4j.appender.nteventlog.source=Test 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
>>>>>>
>>>>>> *3. Start Karaf: "bin\karaf clean"*
>>>>>>
>>>>>> This should work.
>>>>>>
>>>>>> *4. Exit Karaf*
>>>>>>
>>>>>> *5. Change the root looger line to:*
>>>>>>
>>>>>> log4j.rootLogger=INFO, stdout, nteventlog
>>>>>>
>>>>>> *6. Start Karaf again*
>>>>>>
>>>>>> I get the following error:
>>>>>>
>>>>>> 2016-07-04 15:05:39,534 | ERROR | s4j.pax.logging) | configadmin
>>>>>>                  | ?    ? | [org.osgi.service.log.LogService,
>>>>>> org.knopflerfish.service.log.LogService,
>>>>>> org.ops4j.pax.logging.PaxLoggingService,
>>>>>> org.osgi.service.cm.ManagedService, id=12,
>>>>>> bundle=6/mvn:org.ops4j.pax.logging/pax-logging-service/1.8.5]: Unexpected
>>>>>> problem updating configuration org.ops4j.pax.logging
>>>>>> java.lang.UnsatisfiedLinkError: no NTEventLogAppender in
>>>>>> java.library.path
>>>>>>         at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1864)
>>>>>>         at java.lang.Runtime.loadLibrary0(Runtime.java:870)
>>>>>>         at java.lang.System.loadLibrary(System.java:1122)
>>>>>>         at
>>>>>> org.apache.log4j.nt.NTEventLogAppender.<clinit>(NTEventLogAppender.java:179)
>>>>>>         at
>>>>>> sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
>>>>>>         at
>>>>>> sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
>>>>>>         at
>>>>>> sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
>>>>>>         at
>>>>>> java.lang.reflect.Constructor.newInstance(Constructor.java:423)
>>>>>>         at java.lang.Class.newInstance(Class.java:442)
>>>>>>         at
>>>>>> org.apache.log4j.helpers.OptionConverter.instantiateByClassName(OptionConverter.java:336)
>>>>>>         at
>>>>>> org.apache.log4j.helpers.OptionConverter.instantiateByKey(OptionConverter.java:123)
>>>>>>         at
>>>>>> org.apache.log4j.PaxLoggingConfigurator.parseAppender(PaxLoggingConfigurator.java:97)
>>>>>>         at
>>>>>> org.apache.log4j.PropertyConfigurator.parseCategory(PropertyConfigurator.java:735)
>>>>>>         at
>>>>>> org.apache.log4j.PropertyConfigurator.configureRootCategory(PropertyConfigurator.java:615)
>>>>>>         at
>>>>>> org.apache.log4j.PropertyConfigurator.doConfigure(PropertyConfigurator.java:502)
>>>>>>         at
>>>>>> org.apache.log4j.PaxLoggingConfigurator.doConfigure(PaxLoggingConfigurator.java:72)
>>>>>>         at
>>>>>> org.ops4j.pax.logging.service.internal.PaxLoggingServiceImpl.updated(PaxLoggingServiceImpl.java:214)
>>>>>>         at
>>>>>> org.ops4j.pax.logging.service.internal.PaxLoggingServiceImpl$1ManagedPaxLoggingService.updated(PaxLoggingServiceImpl.java:362)
>>>>>>         at
>>>>>> org.apache.felix.cm.impl.helper.ManagedServiceTracker.updated(ManagedServiceTracker.java:189)
>>>>>>         at
>>>>>> org.apache.felix.cm.impl.helper.ManagedServiceTracker.updateService(ManagedServiceTracker.java:152)
>>>>>>         at
>>>>>> org.apache.felix.cm.impl.helper.ManagedServiceTracker.provideConfiguration(ManagedServiceTracker.java:85)
>>>>>>         at
>>>>>> org.apache.felix.cm.impl.ConfigurationManager$UpdateConfiguration.run(ConfigurationManager.java:1753)
>>>>>>         at
>>>>>> org.apache.felix.cm.impl.UpdateThread.run0(UpdateThread.java:143)
>>>>>>         at
>>>>>> org.apache.felix.cm.impl.UpdateThread.run(UpdateThread.java:110)
>>>>>>         at java.lang.Thread.run(Thread.java:745)
>>>>>>
>>>>>> This makes sense since I haven't provided the DLL yet.
>>>>>>
>>>>>> *7. Exit Karaf*
>>>>>>
>>>>>> *8. Put the file NTEventLogAppender.amd64.dll in KARAF_HOME/lib (I
>>>>>> attach the file for 64 bit Windows)*
>>>>>>
>>>>>> *9. Start Karaf again*
>>>>>>
>>>>>> This works - no error messages. I take this as "proof" that the DLL
>>>>>> has been successfully loaded.
>>>>>>
>>>>>> *10. Install pax-jetty:*
>>>>>>
>>>>>> feature:install pax-jetty
>>>>>>
>>>>>> I now get the following error:
>>>>>>
>>>>>> 2016-07-04 15:11:17,854 | ERROR | 4j.pax.logging]) | configadmin
>>>>>>                  | ?    ? | [org.osgi.service.log.LogService,
>>>>>> org.knopflerfish.service.log.LogService,
>>>>>> org.ops4j.pax.logging.PaxLoggingService,
>>>>>> org.osgi.service.cm.ManagedService, id=126,
>>>>>> bundle=6/mvn:org.ops4j.pax.logging/pax-logging-service/1.8.5]: Unexpected
>>>>>> problem updating configuration org.ops4j.pax.logging
>>>>>> java.lang.UnsatisfiedLinkError: no NTEventLogAppender in
>>>>>> java.library.path
>>>>>>         at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1864)
>>>>>>         at java.lang.Runtime.loadLibrary0(Runtime.java:870)
>>>>>>         at java.lang.System.loadLibrary(System.java:1122)
>>>>>>         at
>>>>>> org.apache.log4j.nt.NTEventLogAppender.<clinit>(NTEventLogAppender.java:179)
>>>>>>         at
>>>>>> sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
>>>>>>         at
>>>>>> sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
>>>>>>         at
>>>>>> sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
>>>>>>         at
>>>>>> java.lang.reflect.Constructor.newInstance(Constructor.java:423)
>>>>>>         at java.lang.Class.newInstance(Class.java:442)
>>>>>>         at
>>>>>> org.apache.log4j.helpers.OptionConverter.instantiateByClassName(OptionConverter.java:336)
>>>>>>         at
>>>>>> org.apache.log4j.helpers.OptionConverter.instantiateByKey(OptionConverter.java:123)
>>>>>>         at
>>>>>> org.apache.log4j.PaxLoggingConfigurator.parseAppender(PaxLoggingConfigurator.java:97)
>>>>>>         at
>>>>>> org.apache.log4j.PropertyConfigurator.parseCategory(PropertyConfigurator.java:735)
>>>>>>         at
>>>>>> org.apache.log4j.PropertyConfigurator.configureRootCategory(PropertyConfigurator.java:615)
>>>>>>         at
>>>>>> org.apache.log4j.PropertyConfigurator.doConfigure(PropertyConfigurator.java:502)
>>>>>>         at
>>>>>> org.apache.log4j.PaxLoggingConfigurator.doConfigure(PaxLoggingConfigurator.java:72)
>>>>>>         at
>>>>>> org.ops4j.pax.logging.service.internal.PaxLoggingServiceImpl.updated(PaxLoggingServiceImpl.java:214)
>>>>>>         at
>>>>>> org.ops4j.pax.logging.service.internal.PaxLoggingServiceImpl$1ManagedPaxLoggingService.updated(PaxLoggingServiceImpl.java:362)
>>>>>>         at
>>>>>> org.apache.felix.cm.impl.helper.ManagedServiceTracker.updated(ManagedServiceTracker.java:189)
>>>>>>         at
>>>>>> org.apache.felix.cm.impl.helper.ManagedServiceTracker.updateService(ManagedServiceTracker.java:152)
>>>>>>         at
>>>>>> org.apache.felix.cm.impl.helper.ManagedServiceTracker.provideConfiguration(ManagedServiceTracker.java:85)
>>>>>>         at
>>>>>> org.apache.felix.cm.impl.ConfigurationManager$ManagedServiceUpdate.provide(ConfigurationManager.java:1444)
>>>>>>         at
>>>>>> org.apache.felix.cm.impl.ConfigurationManager$ManagedServiceUpdate.run(ConfigurationManager.java:1400)
>>>>>>         at
>>>>>> org.apache.felix.cm.impl.UpdateThread.run0(UpdateThread.java:143)
>>>>>>         at
>>>>>> org.apache.felix.cm.impl.UpdateThread.run(UpdateThread.java:110)
>>>>>>         at java.lang.Thread.run(Thread.java:745)
>>>>>>
>>>>>> Can anyone understand what is happening? First the DLL is loaded, but
>>>>>> then when pax-jetty is installed it seems to try to load it again but 
>>>>>> fails.
>>>>>>
>>>>>> /Bengt
>>>>>>
>>>>>>
>>>>>> 2016-07-01 9:24 GMT+02:00 Bengt Rodehav <[email protected]>:
>>>>>>
>>>>>>> Turned out not to be so easy to switch version of Pax-logging.
>>>>>>>
>>>>>>> I edited startup.properties.I also had to change version of
>>>>>>> pax-url-aether to 2.3.0. However, it seems like
>>>>>>> org.apache.karaf.features.core bundle requires a version of 
>>>>>>> pax-url-aehter
>>>>>>> that is at least 2.4. However, I still think that the results I got
>>>>>>> indicates that the NTEventLogAppender works with Pax-logging 1.8.1 but 
>>>>>>> not
>>>>>>> with 1.8.5.
>>>>>>>
>>>>>>> Switching to Pax-logging 1.8.1 using Karaf 4.0.5 gives me the
>>>>>>> following error message if I put the NTEventLogAppender.amd64.dll in the
>>>>>>> %KARAF_HOME%\lib directory:
>>>>>>>
>>>>>>> ERROR: Bundle org.apache.karaf.features.core [9] Error starting
>>>>>>> mvn:org.apache.karaf.features/org.apache.karaf.features.core/4.0.5
>>>>>>> (org.osgi.framework.BundleException: Unable to resolve
>>>>>>> org.apache.karaf.features.core [9](R 9.0): missing requirement
>>>>>>> [org.apache.karaf.features.core [9](R 9.0)] osgi.wiring.package;
>>>>>>> (&(osgi.wiring.package=org.ops4j.pax.url.mvn)(version>=2.4.0)(!(version>=3.0.0)))
>>>>>>> Unresolved requirements: [[org.apache.karaf.features.core [9](R 9.0)]
>>>>>>> osgi.wiring.package;
>>>>>>> (&(osgi.wiring.package=org.ops4j.pax.url.mvn)(version>=2.4.0)(!(version>=3.0.0)))])
>>>>>>> org.osgi.framework.BundleException: Unable to resolve
>>>>>>> org.apache.karaf.features.core [9](R 9.0): missing requirement
>>>>>>> [org.apache.karaf.features.core [9](R 9.0)] osgi.wiring.package;
>>>>>>> (&(osgi.wiring.package=org.ops4j.pax.url.mvn)(version>=2.4.0)(!(version>=3.0.0)))
>>>>>>> Unresolved requirements: [[org.apache.karaf.features.core [9](R 9.0)]
>>>>>>> osgi.wiring.package;
>>>>>>> (&(osgi.wiring.package=org.ops4j.pax.url.mvn)(version>=2.4.0)(!(version>=3.0.0)))]
>>>>>>>         at
>>>>>>> org.apache.felix.framework.Felix.resolveBundleRevision(Felix.java:4111)
>>>>>>>         at
>>>>>>> org.apache.felix.framework.Felix.startBundle(Felix.java:2117)
>>>>>>>         at
>>>>>>> org.apache.felix.framework.Felix.setActiveStartLevel(Felix.java:1371)
>>>>>>>         at
>>>>>>> org.apache.felix.framework.FrameworkStartLevelImpl.run(FrameworkStartLevelImpl.java:308)
>>>>>>>         at java.lang.Thread.run(Thread.java:745)
>>>>>>>
>>>>>>> ..and the following error messages if I do NOT put the
>>>>>>> NTEventLogAppender.amd64.dll in the %KARAF_HOME%\lib directory:
>>>>>>>
>>>>>>> 2016-07-01 09:14:04,105 | ERROR | s4j.pax.logging) | configadmin
>>>>>>>                  | ?    ? | [org.osgi.service.log.LogService,
>>>>>>> org.knopflerfish.service.log.LogService,
>>>>>>> org.ops4j.pax.logging.PaxLoggingService,
>>>>>>> org.osgi.service.cm.ManagedService, id=12,
>>>>>>> bundle=6/mvn:org.ops4j.pax.logging/pax-logging-service/1.8.1]: 
>>>>>>> Unexpected
>>>>>>> problem updating configuration org.ops4j.pax.logging
>>>>>>> java.lang.UnsatisfiedLinkError: no NTEventLogAppender in
>>>>>>> java.library.path
>>>>>>>         at
>>>>>>> java.lang.ClassLoader.loadLibrary(ClassLoader.java:1864)[:1.8.0_74]
>>>>>>>         at
>>>>>>> java.lang.Runtime.loadLibrary0(Runtime.java:870)[:1.8.0_74]
>>>>>>>         at java.lang.System.loadLibrary(System.java:1122)[:1.8.0_74]
>>>>>>>         at
>>>>>>> org.apache.log4j.nt.NTEventLogAppender.<clinit>(NTEventLogAppender.java:179)
>>>>>>>         at
>>>>>>> sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native
>>>>>>> Method)[:1.8.0_74]
>>>>>>>         at
>>>>>>> sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)[:1.8.0_74]
>>>>>>>         at
>>>>>>> sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)[:1.8.0_74]
>>>>>>>         at
>>>>>>> java.lang.reflect.Constructor.newInstance(Constructor.java:423)[:1.8.0_74]
>>>>>>>         at java.lang.Class.newInstance(Class.java:442)[:1.8.0_74]
>>>>>>>         at
>>>>>>> org.apache.log4j.helpers.OptionConverter.instantiateByClassName(OptionConverter.java:336)[6:org.ops4j.pax.logging.pax-logging-service:1.8.1]
>>>>>>>         at
>>>>>>> org.apache.log4j.helpers.OptionConverter.instantiateByKey(OptionConverter.java:123)[6:org.ops4j.pax.logging.pax-logging-service:1.8.1]
>>>>>>>         at
>>>>>>> org.apache.log4j.PaxLoggingConfigurator.parseAppender(PaxLoggingConfigurator.java:97)[6:org.ops4j.pax.logging.pax-logging-service:1.8.1]
>>>>>>>         at
>>>>>>> org.apache.log4j.PropertyConfigurator.parseCategory(PropertyConfigurator.java:735)[6:org.ops4j.pax.logging.pax-logging-service:1.8.1]
>>>>>>>         at
>>>>>>> org.apache.log4j.PropertyConfigurator.parseCatsAndRenderers(PropertyConfigurator.java:639)[6:org.ops4j.pax.logging.pax-logging-service:1.8.1]
>>>>>>>         at
>>>>>>> org.apache.log4j.PropertyConfigurator.doConfigure(PropertyConfigurator.java:504)[6:org.ops4j.pax.logging.pax-logging-service:1.8.1]
>>>>>>>         at
>>>>>>> org.apache.log4j.PaxLoggingConfigurator.doConfigure(PaxLoggingConfigurator.java:72)[6:org.ops4j.pax.logging.pax-logging-service:1.8.1]
>>>>>>>         at
>>>>>>> org.ops4j.pax.logging.service.internal.PaxLoggingServiceImpl.updated(PaxLoggingServiceImpl.java:214)[6:org.ops4j.pax.logging.pax-logging-service:1.8.1]
>>>>>>>         at
>>>>>>> org.ops4j.pax.logging.service.internal.PaxLoggingServiceImpl$1ManagedPaxLoggingService.updated(PaxLoggingServiceImpl.java:362)[6:org.ops4j.pax.logging.pax-logging-service:1.8.1]
>>>>>>>         at
>>>>>>> org.apache.felix.cm.impl.helper.ManagedServiceTracker.updated(ManagedServiceTracker.java:189)[7:org.apache.felix.configadmin:1.8.8]
>>>>>>>         at
>>>>>>> org.apache.felix.cm.impl.helper.ManagedServiceTracker.updateService(ManagedServiceTracker.java:152)[7:org.apache.felix.configadmin:1.8.8]
>>>>>>>         at
>>>>>>> org.apache.felix.cm.impl.helper.ManagedServiceTracker.provideConfiguration(ManagedServiceTracker.java:85)[7:org.apache.felix.configadmin:1.8.8]
>>>>>>>         at
>>>>>>> org.apache.felix.cm.impl.ConfigurationManager$UpdateConfiguration.run(ConfigurationManager.java:1753)[7:org.apache.felix.configadmin:1.8.8]
>>>>>>>         at
>>>>>>> org.apache.felix.cm.impl.UpdateThread.run0(UpdateThread.java:143)[7:org.apache.felix.configadmin:1.8.8]
>>>>>>>         at
>>>>>>> org.apache.felix.cm.impl.UpdateThread.run(UpdateThread.java:110)[7:org.apache.felix.configadmin:1.8.8]
>>>>>>>         at java.lang.Thread.run(Thread.java:745)[:1.8.0_74]
>>>>>>> ERROR: Bundle org.apache.karaf.features.core [9] Error starting
>>>>>>> mvn:org.apache.karaf.features/org.apache.karaf.features.core/4.0.5
>>>>>>> (org.osgi.framework.BundleException: Unable to resolve
>>>>>>> org.apache.karaf.features.core [9](R 9.0): missing requirement
>>>>>>> [org.apache.karaf.features.core [9](R 9.0)] osgi.wiring.package;
>>>>>>> (&(osgi.wiring.package=org.ops4j.pax.url.mvn)(version>=2.4.0)(!(version>=3.0.0)))
>>>>>>> Unresolved requirements: [[org.apache.karaf.features.core [9](R 9.0)]
>>>>>>> osgi.wiring.package;
>>>>>>> (&(osgi.wiring.package=org.ops4j.pax.url.mvn)(version>=2.4.0)(!(version>=3.0.0)))])org.osgi.framework.BundleException:
>>>>>>> Unable to resolve org.apache.karaf.features.core [9](R 9.0): missing
>>>>>>> requirement [org.apache.karaf.features.core [9](R 9.0)]
>>>>>>> osgi.wiring.package;
>>>>>>> (&(osgi.wiring.package=org.ops4j.pax.url.mvn)(version>=2.4.0)(!(version>=3.0.0)))
>>>>>>> Unresolved requirements: [[org.apache.karaf.features.core [9](R 9.0)]
>>>>>>> osgi.wiring.package;
>>>>>>> (&(osgi.wiring.package=org.ops4j.pax.url.mvn)(version>=2.4.0)(!(version>=3.0.0)))]
>>>>>>>         at
>>>>>>> org.apache.felix.framework.Felix.resolveBundleRevision(Felix.java:4111)
>>>>>>>         at
>>>>>>> org.apache.felix.framework.Felix.startBundle(Felix.java:2117)
>>>>>>>         at
>>>>>>> org.apache.felix.framework.Felix.setActiveStartLevel(Felix.java:1371)
>>>>>>>         at
>>>>>>> org.apache.felix.framework.FrameworkStartLevelImpl.run(FrameworkStartLevelImpl.java:308)
>>>>>>>         at java.lang.Thread.run(Thread.java:745)
>>>>>>>
>>>>>>> So, the DLL seems to be loaded and Pax-logging seems to work using
>>>>>>> Pax-logging 1.8.1 but not using Pax-logging 1.8.5.
>>>>>>>
>>>>>>> I will re-post this conversation to the OOPS4J mailing list.
>>>>>>>
>>>>>>> /Bengt
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> 2016-07-01 8:55 GMT+02:00 Bengt Rodehav <[email protected]>:
>>>>>>>
>>>>>>>> OK - I guess I misunderstood this then.
>>>>>>>>
>>>>>>>> Looking in the POM's I now see that there are dependencies to both
>>>>>>>> log4j 1.2.16 and log4j 2.x.
>>>>>>>>
>>>>>>>> I wonder then why the NTEventLogAppender can't be used in Karaf
>>>>>>>> 4.0.5. For a while I thought it might be a java version problem. I now 
>>>>>>>> use
>>>>>>>> Java 8 instead of Java 7 like I did before. But even if I run Karaf 
>>>>>>>> 4.0.5
>>>>>>>> using Java 7 I still get the same problem.
>>>>>>>>
>>>>>>>> I will try to use Karaf 4.0.5 with Pax-logging 1.8.1 to see if it
>>>>>>>> makes any difference. What is the best way to accomplish that?
>>>>>>>>
>>>>>>>> /Bengt
>>>>>>>>
>>>>>>>> 2016-06-30 16:54 GMT+02:00 Achim Nierbeck <[email protected]>
>>>>>>>> :
>>>>>>>>
>>>>>>>>> Hi Bengt,
>>>>>>>>>
>>>>>>>>> newer versions of Pax-Logging don't use log4j2 per default so this
>>>>>>>>> should still work ...
>>>>>>>>> the underlying impl is still log4j 1 unless someone changed it on
>>>>>>>>> a minor version update ...
>>>>>>>>>
>>>>>>>>> regards, Achim
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> 2016-06-30 16:23 GMT+02:00 Bengt Rodehav <[email protected]>:
>>>>>>>>>
>>>>>>>>>> Thanks JB,
>>>>>>>>>>
>>>>>>>>>> Tried it though and no diffference.
>>>>>>>>>>
>>>>>>>>>> When investigating this it seems like newer versions of
>>>>>>>>>> pax-logging uses log4j2. Unfortunately the NTEventLogAppender is
>>>>>>>>>> incompatible with log4j2.
>>>>>>>>>>
>>>>>>>>>> I've found the project log4jna that seems to target this.
>>>>>>>>>> Unfortunately I cannot find a released version that supports log4j2.
>>>>>>>>>>
>>>>>>>>>> Anyone else encountered this?
>>>>>>>>>>
>>>>>>>>>> /Bengt
>>>>>>>>>>
>>>>>>>>>> 2016-06-30 14:48 GMT+02:00 Jean-Baptiste Onofré <[email protected]>
>>>>>>>>>> :
>>>>>>>>>>
>>>>>>>>>>> In Karaf 4, the dll should go in lib/ext.
>>>>>>>>>>>
>>>>>>>>>>> Regards
>>>>>>>>>>> JB
>>>>>>>>>>>
>>>>>>>>>>> On 06/30/2016 02:16 PM, Bengt Rodehav wrote:
>>>>>>>>>>>
>>>>>>>>>>>> I have a feeling that I need to put the
>>>>>>>>>>>> NTEventLogAppender.amd4.dll in
>>>>>>>>>>>> another directory in Karaf 4.0.5 then in Karaf 2.4.1.
>>>>>>>>>>>>
>>>>>>>>>>>> I have always put it in the directory %KARAF_HOME%/lib which
>>>>>>>>>>>> works for
>>>>>>>>>>>> Karaf 2.4.1. Where should DLL's be put in Karaf 4.0.5?
>>>>>>>>>>>>
>>>>>>>>>>>> /Bengt
>>>>>>>>>>>>
>>>>>>>>>>>> 2016-06-29 17:37 GMT+02:00 Bengt Rodehav <[email protected]
>>>>>>>>>>>> <mailto:[email protected]>>:
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>     I'm trying to upgrade from Karaf 2..1 to 4.0.5 and I run
>>>>>>>>>>>> into
>>>>>>>>>>>>     problems regarding NTEventLogAppender. I get the following
>>>>>>>>>>>> on startup:
>>>>>>>>>>>>
>>>>>>>>>>>>     2016-06-29 17:16:05,354 | ERROR | 4j.pax.logging]) |
>>>>>>>>>>>> configadmin
>>>>>>>>>>>>                       | ?
>>>>>>>>>>>>          ? | [org.osgi.service.log.LogService,
>>>>>>>>>>>>     org.knopflerfish.service.log.LogService,
>>>>>>>>>>>>     org.ops4j.pax.logging.PaxLoggingService,
>>>>>>>>>>>>     org.osgi.service.cm.ManagedService, id=34,
>>>>>>>>>>>>
>>>>>>>>>>>> bundle=6/mvn:org.ops4j.pax.logging/pax-logging-service/1.8.5]:
>>>>>>>>>>>>     Unexpected problem updating configuration
>>>>>>>>>>>> org.ops4j.pax.logging
>>>>>>>>>>>>     java.lang.UnsatisfiedLinkError: no NTEventLogAppender in
>>>>>>>>>>>>     java.library.path
>>>>>>>>>>>>              at
>>>>>>>>>>>>
>>>>>>>>>>>> java.lang.ClassLoader.loadLibrary(ClassLoader.java:1864)[:1.8.0_74]
>>>>>>>>>>>>              at
>>>>>>>>>>>> java.lang.Runtime.loadLibrary0(Runtime.java:870)[:1.8.0_74]
>>>>>>>>>>>>              at
>>>>>>>>>>>> java.lang.System.loadLibrary(System.java:1122)[:1.8.0_74]
>>>>>>>>>>>>              at
>>>>>>>>>>>>
>>>>>>>>>>>> org.apache.log4j.nt.NTEventLogAppender.<clinit>(NTEventLogAppender.java:179)
>>>>>>>>>>>>              at
>>>>>>>>>>>>
>>>>>>>>>>>> sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native
>>>>>>>>>>>>     Method)[:1.8.0_74]
>>>>>>>>>>>>              at
>>>>>>>>>>>>
>>>>>>>>>>>> sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)[:1.8.0_74]
>>>>>>>>>>>>              at
>>>>>>>>>>>>
>>>>>>>>>>>> sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)[:1.8.0_74]
>>>>>>>>>>>>              at
>>>>>>>>>>>>
>>>>>>>>>>>> java.lang.reflect.Constructor.newInstance(Constructor.java:423)[:1.8.0_74]
>>>>>>>>>>>>              at
>>>>>>>>>>>> java.lang.Class.newInstance(Class.java:442)[:1.8.0_74]
>>>>>>>>>>>>              at
>>>>>>>>>>>>
>>>>>>>>>>>> org.apache.log4j.helpers.OptionConverter.instantiateByClassName(OptionConverter.java:336)[6:org.ops4j.pax.logging.pax-logging-service:1.8.5]
>>>>>>>>>>>>              at
>>>>>>>>>>>>
>>>>>>>>>>>> org.apache.log4j.helpers.OptionConverter.instantiateByKey(OptionConverter.java:123)[6:org.ops4j.pax.logging.pax-logging-service:1.8.5]
>>>>>>>>>>>>              at
>>>>>>>>>>>>
>>>>>>>>>>>> org.apache.log4j.PaxLoggingConfigurator.parseAppender(PaxLoggingConfigurator.java:97)[6:org.ops4j.pax.logging.pax-logging-service:1.8.5]
>>>>>>>>>>>>              at
>>>>>>>>>>>>
>>>>>>>>>>>> org.apache.log4j.PropertyConfigurator.parseCategory(PropertyConfigurator.java:735)[6:org.ops4j.pax.logging.pax-logging-service:1.8.5]
>>>>>>>>>>>>              at
>>>>>>>>>>>>
>>>>>>>>>>>> org.apache.log4j.PropertyConfigurator.parseCatsAndRenderers(PropertyConfigurator.java:639)[6:org.ops4j.pax.logging.pax-logging-service:1.8.5]
>>>>>>>>>>>>              at
>>>>>>>>>>>>
>>>>>>>>>>>> org.apache.log4j.PropertyConfigurator.doConfigure(PropertyConfigurator.java:504)[6:org.ops4j.pax.logging.pax-logging-service:1.8.5]
>>>>>>>>>>>>              at
>>>>>>>>>>>>
>>>>>>>>>>>> org.apache.log4j.PaxLoggingConfigurator.doConfigure(PaxLoggingConfigurator.java:72)[6:org.ops4j.pax.logging.pax-logging-service:1.8.5]
>>>>>>>>>>>>              at
>>>>>>>>>>>>
>>>>>>>>>>>> org.ops4j.pax.logging.service.internal.PaxLoggingServiceImpl.updated(PaxLoggingServiceImpl.java:214)[6:org.ops4j.pax.logging.pax-logging-service:1.8.5]
>>>>>>>>>>>>              at
>>>>>>>>>>>>
>>>>>>>>>>>> org.ops4j.pax.logging.service.internal.PaxLoggingServiceImpl$1ManagedPaxLoggingService.updated(PaxLoggingServiceImpl.java:362)[6:org.ops4j.pax.logging.pax-logging-service:1.8.5]
>>>>>>>>>>>>              at
>>>>>>>>>>>>
>>>>>>>>>>>> org.apache.felix.cm.impl.helper.ManagedServiceTracker.updated(ManagedServiceTracker.java:189)[7:org.apache.felix.configadmin:1.8.8]
>>>>>>>>>>>>              at
>>>>>>>>>>>>
>>>>>>>>>>>> org.apache.felix.cm.impl.helper.ManagedServiceTracker.updateService(ManagedServiceTracker.java:152)[7:org.apache.felix.configadmin:1.8.8]
>>>>>>>>>>>>              at
>>>>>>>>>>>>
>>>>>>>>>>>> org.apache.felix.cm.impl.helper.ManagedServiceTracker.provideConfiguration(ManagedServiceTracker.java:85)[7:org.apache.felix.configadmin:1.8.8]
>>>>>>>>>>>>              at
>>>>>>>>>>>>
>>>>>>>>>>>> org.apache.felix.cm.impl.ConfigurationManager$ManagedServiceUpdate.provide(ConfigurationManager.java:1444)[7:org.apache.felix.configadmin:1.8.8]
>>>>>>>>>>>>              at
>>>>>>>>>>>>
>>>>>>>>>>>> org.apache.felix.cm.impl.ConfigurationManager$ManagedServiceUpdate.run(ConfigurationManager.java:1400)[7:org.apache.felix.configadmin:1.8.8]
>>>>>>>>>>>>              at
>>>>>>>>>>>>
>>>>>>>>>>>> org.apache.felix.cm.impl.UpdateThread.run0(UpdateThread.java:143)[7:org.apache.felix.configadmin:1.8.8]
>>>>>>>>>>>>              at
>>>>>>>>>>>>
>>>>>>>>>>>> org.apache.felix.cm.impl.UpdateThread.run(UpdateThread.java:110)[7:org.apache.felix.configadmin:1.8.8]
>>>>>>>>>>>>              at java.lang.Thread.run(Thread.java:745)[:1.8.0_74]
>>>>>>>>>>>>
>>>>>>>>>>>>     Like I did on Karaf 2.4.1, I have put the
>>>>>>>>>>>>     file NTEventLogAppender.amd64.dll in the "lib" directory
>>>>>>>>>>>> under
>>>>>>>>>>>>     Karaf. It has the version 1.2.16.1.
>>>>>>>>>>>>
>>>>>>>>>>>>     Does anyone know how to get the NTEventLogAppender to work
>>>>>>>>>>>> with
>>>>>>>>>>>>     Karaf 4.0.5?
>>>>>>>>>>>>
>>>>>>>>>>>>     /Bengt
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>> --
>>>>>>>>>>> Jean-Baptiste Onofré
>>>>>>>>>>> [email protected]
>>>>>>>>>>> http://blog.nanthrax.net
>>>>>>>>>>> Talend - http://www.talend.com
>>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> --
>>>>>>>>>
>>>>>>>>> Apache Member
>>>>>>>>> Apache Karaf <http://karaf.apache.org/> Committer & PMC
>>>>>>>>> OPS4J Pax Web <http://wiki.ops4j.org/display/paxweb/Pax+Web/>
>>>>>>>>> Committer & Project Lead
>>>>>>>>> blog <http://notizblog.nierbeck.de/>
>>>>>>>>> Co-Author of Apache Karaf Cookbook <http://bit.ly/1ps9rkS>
>>>>>>>>>
>>>>>>>>> Software Architect / Project Manager / Scrum Master
>>>>>>>>>
>>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>
>>>>>
>>>>
>>>
>>>
>>> --
>>>
>>> Apache Member
>>> Apache Karaf <http://karaf.apache.org/> Committer & PMC
>>> OPS4J Pax Web <http://wiki.ops4j.org/display/paxweb/Pax+Web/> Committer
>>> & Project Lead
>>> blog <http://notizblog.nierbeck.de/>
>>> Co-Author of Apache Karaf Cookbook <http://bit.ly/1ps9rkS>
>>>
>>> Software Architect / Project Manager / Scrum Master
>>>
>>>
>>
>


-- 

Apache Member
Apache Karaf <http://karaf.apache.org/> Committer & PMC
OPS4J Pax Web <http://wiki.ops4j.org/display/paxweb/Pax+Web/> Committer &
Project Lead
blog <http://notizblog.nierbeck.de/>
Co-Author of Apache Karaf Cookbook <http://bit.ly/1ps9rkS>

Software Architect / Project Manager / Scrum Master

Reply via email to