That means that we must create a specific profile in Maven when we
generate SMX4 as a WAR to avoid to load them twice.
On 21/10/10 14:27, Jean-Baptiste Onofré 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