Chetan Mehrotra created SLING-3913: -------------------------------------- Summary: Sling Logging fails to work in Eclipse Virgo Key: SLING-3913 URL: https://issues.apache.org/jira/browse/SLING-3913 Project: Sling Issue Type: Bug Components: Commons Affects Versions: Commons Log 4.0.0 Reporter: Chetan Mehrotra Assignee: Chetan Mehrotra Fix For: Commons Log 4.0.2
Logging fails to work in SAP NetWeaver environment which run on top of OSGi using Eclipse Virgo which already use Logback. Following error is seen in app server logs {noformat} 2014 09 04 06:43:32#+00#ERROR#System.err##anonymous#FelixStartLevel##adsdev#deployedauthor1#web##Reported exception:| 2014 09 04 06:43:32#+00#ERROR#System.err##anonymous#FelixStartLevel##adsdev#deployedauthor1#web##java.lang.ClassNotFoundException: org.eclipse.virgo.medic.log.logback.DelegatingContextSelector not found by org.apache.sling.commons.log [14]| 2014 09 04 06:43:32#+00#ERROR#System.err##anonymous#FelixStartLevel##adsdev#deployedauthor1#web## at org.apache.felix.framework.BundleWiringImpl.findClassOrResourceByDelegation(BundleWiringImpl.java:1550)| 2014 09 04 06:43:32#+00#ERROR#System.err##anonymous#FelixStartLevel##adsdev#deployedauthor1#web## at org.apache.felix.framework.BundleWiringImpl.access$400(BundleWiringImpl.java:77)| 2014 09 04 06:43:32#+00#ERROR#System.err##anonymous#FelixStartLevel##adsdev#deployedauthor1#web## at org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.loadClass(BundleWiringImpl.java:1973)| 2014 09 04 06:43:32#+00#ERROR#System.err##anonymous#FelixStartLevel##adsdev#deployedauthor1#web## at java.lang.ClassLoader.loadClass(ClassLoader.java:415)| 2014 09 04 06:43:32#+00#ERROR#System.err##anonymous#FelixStartLevel##adsdev#deployedauthor1#web## at java.lang.Class.forName0(Native Method)| 2014 09 04 06:43:32#+00#ERROR#System.err##anonymous#FelixStartLevel##adsdev#deployedauthor1#web## at java.lang.Class.forName(Class.java:186)| 2014 09 04 06:43:32#+00#ERROR#System.err##anonymous#FelixStartLevel##adsdev#deployedauthor1#web## at ch.qos.logback.core.util.Loader.loadClass(Loader.java:185)| 2014 09 04 06:43:32#+00#ERROR#System.err##anonymous#FelixStartLevel##adsdev#deployedauthor1#web## at ch.qos.logback.classic.util.ContextSelectorStaticBinder.dynamicalContextSelector(ContextSelectorStaticBinder.java:97)| 2014 09 04 06:43:32#+00#ERROR#System.err##anonymous#FelixStartLevel##adsdev#deployedauthor1#web## at ch.qos.logback.classic.util.ContextSelectorStaticBinder.init(ContextSelectorStaticBinder.java:72)| 2014 09 04 06:43:32#+00#ERROR#System.err##anonymous#FelixStartLevel##adsdev#deployedauthor1#web## at org.slf4j.impl.StaticLoggerBinder.init(StaticLoggerBinder.java:93)| 2014 09 04 06:43:32#+00#ERROR#System.err##anonymous#FelixStartLevel##adsdev#deployedauthor1#web## at org.slf4j.impl.StaticLoggerBinder.<clinit>(StaticLoggerBinder.java:55)| 2014 09 04 06:43:32#+00#ERROR#System.err##anonymous#FelixStartLevel##adsdev#deployedauthor1#web## at org.slf4j.LoggerFactory.bind(LoggerFactory.java:129)| 2014 09 04 06:43:32#+00#ERROR#System.err##anonymous#FelixStartLevel##adsdev#deployedauthor1#web## at org.slf4j.LoggerFactory.performInitialization(LoggerFactory.java:108)| 2014 09 04 06:43:32#+00#ERROR#System.err##anonymous#FelixStartLevel##adsdev#deployedauthor1#web## at org.slf4j.LoggerFactory.getILoggerFactory(LoggerFactory.java:302)| 2014 09 04 06:43:32#+00#ERROR#System.err##anonymous#FelixStartLevel##adsdev#deployedauthor1#web## at org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:276)| 2014 09 04 06:43:32#+00#ERROR#System.err##anonymous#FelixStartLevel##adsdev#deployedauthor1#web## at org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:288)| 2014 09 04 06:43:32#+00#ERROR#System.err##anonymous#FelixStartLevel##adsdev#deployedauthor1#web## at org.apache.sling.installer.provider.file.impl.ServicesListener.<init>(ServicesListener.java:45)| 2014 09 04 06:43:32#+00#ERROR#System.err##anonymous#FelixStartLevel##adsdev#deployedauthor1#web## at org.apache.sling.installer.provider.file.impl.Activator.start(Activator.java:66)| 2014 09 04 06:43:32#+00#ERROR#System.err##anonymous#FelixStartLevel##adsdev#deployedauthor1#web## at org.apache.felix.framework.util.SecureAction.startActivator(SecureAction.java:645)| 2014 09 04 06:43:32#+00#ERROR#System.err##anonymous#FelixStartLevel##adsdev#deployedauthor1#web## at org.apache.felix.framework.Felix.activateBundle(Felix.java:2152)| 2014 09 04 06:43:32#+00#ERROR#System.err##anonymous#FelixStartLevel##adsdev#deployedauthor1#web## at org.apache.felix.framework.Felix.startBundle(Felix.java:2070)| 2014 09 04 06:43:32#+00#ERROR#System.err##anonymous#FelixStartLevel##adsdev#deployedauthor1#web## at org.apache.felix.framework.Felix.setActiveStartLevel(Felix.java:1297)| 2014 09 04 06:43:32#+00#ERROR#System.err##anonymous#FelixStartLevel##adsdev#deployedauthor1#web## at org.apache.felix.framework.FrameworkStartLevelImpl.run(FrameworkStartLevelImpl.java:304)| 2014 09 04 06:43:32#+00#ERROR#System.err##anonymous#FelixStartLevel##adsdev#deployedauthor1#web## at java.lang.Thread.run(Thread.java:789)| 2014 09 04 06:48:05#+00#INFO#System.out##anonymous#FelixStartLevel##adsdev#deployedauthor1#web##Attempting to load ESAPI.properties via file I/O.| {noformat} Logback has some [discovery mechanism|http://logback.qos.ch/manual/contextSelector.html] where it looks for a system property {{logback.ContextSelector}} and loads the configured class if set. As SAP NetWeaver Cloud internally uses Eclipse Virgo which also uses Logback it has set a value for that system property and that causes the issue. As a fix we should disable this discovery logic in Logback -- This message was sent by Atlassian JIRA (v6.3.4#6332)