You are viewing a plain text version of this content. The canonical link for it is here.
Posted to solr-user@lucene.apache.org by Jonatan Fournier <jo...@gmail.com> on 2013/05/06 19:55:38 UTC

Solr 4.3 and SLF4j

Hi,

I've read from http://wiki.apache.org/solr/SolrLogging that Solr no longer
ships with Logging jars bundled into the WAR file.

For simplicity in package management, other than Solr, I'm trying to stay
with stock packages from Ubuntu 12.04 (e.g. Tomcat7 etc.)

Now I'm trying to find out what do I need to install to meet the Solr
Logging requirements, using Ubuntu packages if possible at all.

Initially I thought having 'libslf4j-java' would be enough but that still
gave me that Tomcat 7 error at startup:

May 06, 2013 1:28:00 PM org.apache.catalina.core.StandardContext filterStart
SEVERE: Exception starting filter SolrRequestFilter
org.apache.solr.common.SolrException: Could not find necessary SLF4j
logging jars. If using Jetty, the SLF4j logging jars need to go in the
jetty lib/ext directory. For other containers, the corresponding directory
should be used. For more information, see:
http://wiki.apache.org/solr/SolrLogging
at
org.apache.solr.servlet.SolrDispatchFilter.<init>(SolrDispatchFilter.java:105)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at
sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
at
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:525)
at java.lang.Class.newInstance0(Class.java:374)
at java.lang.Class.newInstance(Class.java:327)
at
org.apache.catalina.core.DefaultInstanceManager.newInstance(DefaultInstanceManager.java:125)
at
org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:256)
at
org.apache.catalina.core.ApplicationFilterConfig.setFilterDef(ApplicationFilterConfig.java:382)
at
org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:103)
at
org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:4638)
at
org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5294)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
at
org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:895)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:871)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:615)
at
org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:649)
at
org.apache.catalina.startup.HostConfig$DeployDescriptor.run(HostConfig.java:1581)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
at java.util.concurrent.FutureTask.run(FutureTask.java:166)
at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:722)
Caused by: java.lang.NoClassDefFoundError: org/slf4j/LoggerFactory
at
org.apache.solr.servlet.SolrDispatchFilter.<init>(SolrDispatchFilter.java:103)
... 24 more
Caused by: java.lang.ClassNotFoundException: org.slf4j.LoggerFactory
at
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1701)
at
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1546)
... 25 more

Anybody testing 4.3 on Tomcat at the moment? Any help would be appreciated
related to Tomcat configuration etc.

Cheers,

/jonatan

Re: Solr 4.3 and SLF4j

Posted by Mark Miller <ma...@gmail.com>.
You need all the same jars that are in the lib/ext folder of the default jetty distribution. Those are the logging jars, those are what you need. All you can do is swap out impls (see the SLF4j documentation). You must have all those jars as a start, and if you don't want to use log4j, you can switch impls. 

- Mark

On May 6, 2013, at 1:55 PM, Jonatan Fournier <jo...@gmail.com> wrote:

> Hi,
> 
> I've read from http://wiki.apache.org/solr/SolrLogging that Solr no longer
> ships with Logging jars bundled into the WAR file.
> 
> For simplicity in package management, other than Solr, I'm trying to stay
> with stock packages from Ubuntu 12.04 (e.g. Tomcat7 etc.)
> 
> Now I'm trying to find out what do I need to install to meet the Solr
> Logging requirements, using Ubuntu packages if possible at all.
> 
> Initially I thought having 'libslf4j-java' would be enough but that still
> gave me that Tomcat 7 error at startup:
> 
> May 06, 2013 1:28:00 PM org.apache.catalina.core.StandardContext filterStart
> SEVERE: Exception starting filter SolrRequestFilter
> org.apache.solr.common.SolrException: Could not find necessary SLF4j
> logging jars. If using Jetty, the SLF4j logging jars need to go in the
> jetty lib/ext directory. For other containers, the corresponding directory
> should be used. For more information, see:
> http://wiki.apache.org/solr/SolrLogging
> at
> org.apache.solr.servlet.SolrDispatchFilter.<init>(SolrDispatchFilter.java:105)
> at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
> at
> sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
> at
> sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
> at java.lang.reflect.Constructor.newInstance(Constructor.java:525)
> at java.lang.Class.newInstance0(Class.java:374)
> at java.lang.Class.newInstance(Class.java:327)
> at
> org.apache.catalina.core.DefaultInstanceManager.newInstance(DefaultInstanceManager.java:125)
> at
> org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:256)
> at
> org.apache.catalina.core.ApplicationFilterConfig.setFilterDef(ApplicationFilterConfig.java:382)
> at
> org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:103)
> at
> org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:4638)
> at
> org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5294)
> at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
> at
> org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:895)
> at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:871)
> at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:615)
> at
> org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:649)
> at
> org.apache.catalina.startup.HostConfig$DeployDescriptor.run(HostConfig.java:1581)
> at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
> at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
> at java.util.concurrent.FutureTask.run(FutureTask.java:166)
> at
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
> at java.lang.Thread.run(Thread.java:722)
> Caused by: java.lang.NoClassDefFoundError: org/slf4j/LoggerFactory
> at
> org.apache.solr.servlet.SolrDispatchFilter.<init>(SolrDispatchFilter.java:103)
> ... 24 more
> Caused by: java.lang.ClassNotFoundException: org.slf4j.LoggerFactory
> at
> org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1701)
> at
> org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1546)
> ... 25 more
> 
> Anybody testing 4.3 on Tomcat at the moment? Any help would be appreciated
> related to Tomcat configuration etc.
> 
> Cheers,
> 
> /jonatan