[logback-user] Jetty conflict

Aleksey Didik didik at magenta-technology.ru
Thu Feb 4 09:28:51 CET 2010


Hello Ceki,
Thanks for explanation. It's clear now.
I'll try to make something with this situation.

Aleksey.


03.02.2010 21:46, Ceki Gulcu пишет:
>
> Hello Aleksey,
>
>
> I am not totally surprised by what you describe. According to the java
> laguage specification (JLS) two classes loaded by distinct class
> loaders are deemed incompatible even if the classes are bitwise
> identical.
>
> When the jetty class loader loads ch.qos.classic.Logger it also needs
> to load org.slf4j.Logger which it can, and does. When the
> ch.qos.classic.Logger is returned to your web-application as a
> org.slf4j.Logger as requested by your web-application, the returned
> Logger is not compatible with the expected Logger, even if they are
> both of type org.slf4j.Logger. Your web-application expects it to be
> loaded by the web-app's class loader but the returned instance is loaded
> by the jetty class loader, hence the error you observe.
>
> HTH,
>
> On 03.02.2010 18:36, Aleksey Didik wrote:
>> Hello,
>> I have caught a problem of using embedded Jetty and slf4j, may be you
>> can help me.
>>
>> Jetty tell me this one:
>>
>> java.lang.LinkageError: loader constraint violation: when resolving
>> method
>> "org.slf4j.impl.StaticLoggerBinder.getLoggerFactory()Lorg/slf4j/ILoggerFactory;" 
>>
>> the
>> class loader (instance of org/eclipse/jetty/webapp/WebAppClassLoader) of
>> the current class, org/slf4j/LoggerFactory, and the class loader
>> (instance of sun/misc
>> /Launcher$AppClassLoader) for resolved class,
>> org/slf4j/impl/StaticLoggerBinder, have different Class objects for the
>> type org/slf4j/ILoggerFactory used in the
>> signature [main o.e.j.u.l.Slf4jLog.warn:111]
>>
>> I have next jars:
>>
>> Embedded Jetty classpath:
>> slf4j-api-1.5.10.jar
>> logback-classic-0.9.18.jar
>>
>> War libs:
>> slf4j-api-1.5.10.jar
>>
>> But I add
>> slf4j-api-1.5.10.jar
>> logback-classic-0.9.18.jar
>> to WAR libs and delete
>> logback-classic-0.9.18.jar
>> from jetty classpath, all work fine.
>>
>> Best regards,
>> Aleksey Didik
>
> _______________________________________________
> Logback-user mailing list
> Logback-user at qos.ch
> http://qos.ch/mailman/listinfo/logback-user
>



More information about the Logback-user mailing list