That would not work (or it might, but I doubt it), as karaf uses pax-logging
which has some modified versions of the log4j classes in order to make them
work nicely in OSGi.

On Thu, Oct 21, 2010 at 14:27, Jean-Baptiste Onofré <j...@nanthrax.net> wrote:

> It's linked to the JEE/WAR classloading management.
>
> By default, Tomcat has a hierarchical classloader: Bootstrap, System,
> Common, One Classloader per Webapp, in this order.
>
> As log4j is already loaded by the Bootstrap classloader, you have a
> "collision".
> A possible workaround is to remove the Karaf log4j to use the Bootstrap
> one.
>
> Regards
> JB
>
>
> On 10/21/2010 01:50 PM, Charles Moulliard wrote:
>
>> Hi,
>>
>> When Karaf is deployed as a WAR in Jetty or Tomcat, log4j classes are
>> loaded twice and of course Karaf is not able to report trace in
>> servicemix.log file.
>>
>> log4j:ERROR A "org.apache.log4j.ConsoleAppender" object is not
>> assignable to a "org.apache.log4j.Appender" variable.
>> log4j:ERROR The class "org.apache.log4j.Appender" was loaded by
>> log4j:ERROR [4.0] whereas object of type
>> log4j:ERROR "org.apache.log4j.ConsoleAppender" was loaded by
>> [contextloa...@servicemix Embedded Example].
>> log4j:ERROR Could not instantiate appender named "A1".
>> log4j:ERROR A "org.apache.log4j.ConsoleAppender" object is not
>> assignable to a "org.apache.log4j.Appender" variable.
>> log4j:ERROR The class "org.apache.log4j.Appender" was loaded by
>> log4j:ERROR [4.0] whereas object of type
>> log4j:ERROR "org.apache.log4j.ConsoleAppender" was loaded by
>> [contextloa...@servicemix Embedded Example].
>>
>> Does anybody has an idea to avoid that ?
>>
>> Regards,
>>
>> Charles
>>
>


-- 
Cheers,
Guillaume Nodet
------------------------
Blog: http://gnodet.blogspot.com/
------------------------
Open Source SOA
http://fusesource.com

Reply via email to