You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@commons.apache.org by "Gramann, Cindy" <Ci...@doa.state.wi.us> on 2003/10/21 21:35:11 UTC
RE: [Logging] LogConfigurationException - Log4JLogger does not im
plem ent Log
I haven't been able to successfully convince our web admins to do that. Any
other suggestions?
-----Original Message-----
From: robert burrell donkin
[mailto:robertburrelldonkin@blueyonder.co.uk]
Sent: Monday, October 13, 2003 7:30 AM
To: Jakarta Commons Users List
Subject: Re: [Logging] LogConfigurationException - Log4JLogger does not
implem ent Log
hi cindy
this looks like a classloader issue. have you tried including
commons-logging in the initial classpath when weblogic starts up?
- robert
On Wednesday, October 8, 2003, at 09:58 PM, Gramann, Cindy wrote:
> I'm currently getting a LogConfigurationException for 2 applications using
> Struts 1.1, Commons Logging 1.0.3, and Log4j 1.2.7 (all as .jar files in
> /WEB-INF/lib) running on Websphere 4.01 on the s/390. Each of the .jar
> files
> exist in /WEB-INF/lib for the respective applications. I have examined the
> classpath and cannot find other copies of commons-logging or log4j
> (besides
> in the 2 apps)
>
> The exception only occurs if a request is attempted within a few minutes
> after application deployment has completed. It does not recover from the
> Exception until either the server is restarted or the application is
> redeployed.
>
> If no one attempts to access the application until after 3 minutes
> following
> completion of a deployment, the application works fine. I've read about
> others having problems with classloader issues, but have been unable to
> solve this problem.
>
> Here is the exception that I'm getting:
>
> Reload webapp erouting
> Oct 08, 2003 10:58:07.233 AM
> 3298e410:52f:600001:1d:Thread[Thread-227684,5,main] WebGroup X
> Servlet
> Error-[{0}]: {1}: {2}
> "action"
> "Failed to load servlet"
> java.lang.ExceptionInInitializerError:
> org.apache.commons.logging.LogConfigurationException:
> org.apache.commons.logging.LogConfigurationException:
> org.apache.commons.logging.LogConfigurationException: Class
> org.apache.commons.logging.impl.Log4JLogger does not implement Log
> at java.lang.Throwable.<init>(Throwable.java:104)
> at java.lang.Exception.<init>(Exception.java:52)
> at java.lang.RuntimeException.<init>(RuntimeException.java:57)
> at
> org.apache.commons.logging.LogConfigurationException.<init>
> (LogConfiguration
> Exception.java:120)
> at
> org.apache.commons.logging.LogConfigurationException.<init>
> (LogConfiguration
> Exception.java:107)
> at
> org.apache.commons.logging.impl.LogFactoryImpl.newInstance(LogFactoryImpl.
> ja
> va:532)
> at
> org.apache.commons.logging.impl.LogFactoryImpl.getInstance(LogFactoryImpl.
> ja
> va:272)
> at
> org.apache.commons.logging.impl.LogFactoryImpl.getInstance(LogFactoryImpl.
> ja
> va:246)
> at org.apache.commons.logging.LogFactory.getLog(LogFactory.java:395)
> at
> org.apache.struts.action.ActionServlet.<clinit>(ActionServlet.java:375)
> at java.lang.Class.newInstance0(Native Method)
> at java.lang.Class.newInstance(Class.java:262)
> at java.beans.Beans.instantiate(Beans.java:233)
> at java.beans.Beans.instantiate(Beans.java:77)
> at
> com.ibm.servlet.engine.webapp.WebAppServletManager.loadServlet
> (WebAppServlet
> Manager.java:64)
> at
> com.ibm.servlet.engine.webapp.WebAppServletManager.loadAutoLoadServlets
> (WebA
> ppServletManager.java:241)
> at
> com.ibm.servlet.engine.webapp.WebApp.loadServletManager(WebApp.java:917)
> at com.ibm.servlet.engine.webapp.WebApp.init(WebApp.java:133)
> at com.ibm.servlet.engine.srt.WebGroup.loadWebApp(WebGroup.java:177)
> at com.ibm.servlet.engine.srt.WebGroup.reload(WebGroup.java:665)
> at
> com.ibm.servlet.engine.srt.ClassChangeWatcher.classLoaderReloaded
> (WebGroup.j
> ava:1152)
> at
> com.ibm.servlet.classloader.PowerClassLoader.fireClassLoaderReloaded
> (PowerCl
> assLoader.java:221)
> at
> com.ibm.servlet.classloader.PowerClassLoader.reload(PowerClassLoader.java:
> 13
> 9)
> at
> com.ibm.servlet.classloader.PowerClassLoader.reload(PowerClassLoader.java:
> 10
> 7)
> at
>
com.ibm.servlet.engine.srt.ClassChangeWatcher.initiateReload(WebGroup.java:
> 1
> 209)
> at
> com.ibm.servlet.engine.srt.WebGroup.initiateReload(WebGroup.java:806)
> at
> com.ibm.servlet.engine.srt.WebGroup.handleSynchronizedDispatchExit
> (WebGroup.
> java:846)
> at
>
com.ibm.servlet.engine.srt.WebAppInvoker.handleInvocationHook(WebGroup.java:
> 1045)
> at
> com.ibm.servlet.engine.invocation.CachedInvocation.handleInvocation
> (CachedIn
> vocation.java:69)
> at
> com.ibm.servlet.engine.srp.ServletRequestProcessor.dispatchByURI
> (ServletRequ
> estProcessor.java:176)
> at
> com.ibm.servlet.engine.oselistener.OSEListenerDispatcher.service
> (OSEListener
> .java:357)
> at
>
com.ibm.ws390.wc.redirector.WS390Redirector$WS390RedirectorDispatcher.servic
> e(WS390Redirector.java:1579)
> at
>
com.ibm.servlet.engine.oselistener.inproc.InProcAppServerDispatcher.service(
> InProcAppServerDispatcher.java:54)
> at
>
com.ibm.servlet.engine.oselistener.inproc.InProcThreadPrivateData.dispatchSe
> rvletRequest(InProcThreadPrivateData.java:144)
> at
> com.ibm.servlet.engine.oselistener.inproc.InProcPlugin.service
> (InProcPlugin.
> java:602)
>
> Oct 08, 2003 10:58:08.336 AM
> 3298e410:52f:600001:1d:Thread[Thread-227684,5,main] WebApp X Failed
> to initialize webapp {0}
> "erouting"
> javax.servlet.ServletException: Servlet
> [action]: could not be loaded
> at java.lang.Throwable.<init>(Throwable.java:104)
> at java.lang.Exception.<init>(Exception.java:52)
> at javax.servlet.ServletException.<init>(ServletException.java:132)
> at
> com.ibm.servlet.engine.webapp.WebAppServletManager.loadServlet
> (WebAppServlet
> Manager.java:110)
> at
> com.ibm.servlet.engine.webapp.WebAppServletManager.loadAutoLoadServlets
> (WebA
> ppServletManager.java:241)
> at
> com.ibm.servlet.engine.webapp.WebApp.loadServletManager(WebApp.java:917)
> at com.ibm.servlet.engine.webapp.WebApp.init(WebApp.java:133)
> at com.ibm.servlet.engine.srt.WebGroup.loadWebApp(WebGroup.java:177)
> at com.ibm.servlet.engine.srt.WebGroup.reload(WebGroup.java:665)
> at
> com.ibm.servlet.engine.srt.ClassChangeWatcher.classLoaderReloaded
> (WebGroup.j
> ava:1152)
> at
> com.ibm.servlet.classloader.PowerClassLoader.fireClassLoaderReloaded
> (PowerCl
> assLoader.java:221)
> at
> com.ibm.servlet.classloader.PowerClassLoader.reload(PowerClassLoader.java:
> 13
> 9)
> at
> com.ibm.servlet.classloader.PowerClassLoader.reload(PowerClassLoader.java:
> 10
> 7)
> at
>
com.ibm.servlet.engine.srt.ClassChangeWatcher.initiateReload(WebGroup.java:
> 1
> 209)
> at
> com.ibm.servlet.engine.srt.WebGroup.initiateReload(WebGroup.java:806)
> at
> com.ibm.servlet.engine.srt.WebGroup.handleSynchronizedDispatchExit
> (WebGroup.
> java:846)
> at
>
com.ibm.servlet.engine.srt.WebAppInvoker.handleInvocationHook(WebGroup.java:
> 1045)
> at
> com.ibm.servlet.engine.invocation.CachedInvocation.handleInvocation
> (CachedIn
> vocation.java:69)
> at
> com.ibm.servlet.engine.srp.ServletRequestProcessor.dispatchByURI
> (ServletRequ
> estProcessor.java:176)
> at
> com.ibm.servlet.engine.oselistener.OSEListenerDispatcher.service
> (OSEListener
> .java:357)
> at
>
com.ibm.ws390.wc.redirector.WS390Redirector$WS390RedirectorDispatcher.servic
> e(WS390Redirector.java:1579)
> at
>
com.ibm.servlet.engine.oselistener.inproc.InProcAppServerDispatcher.service(
> InProcAppServerDispatcher.java:54)
> at
>
com.ibm.servlet.engine.oselistener.inproc.InProcThreadPrivateData.dispatchSe
> rvletRequest(InProcThreadPrivateData.java:144)
> at
> com.ibm.servlet.engine.oselistener.inproc.InProcPlugin.service
> (InProcPlugin.
> java:602)
>
> Oct 08, 2003 10:58:15.984 AM
> 3298e7c8:3db:620001:18:Thread[Thread-227703,5,main] WebGroup X
> Servlet
> Error (Root + 1)-[{0}]: {1}: {2}
> "action"
> "Failed to load servlet"
> javax.servlet.ServletException: Servlet
> [action]: gov.wi.state.core.action.CoreActionServlet was found, but is
> missing another required class.
> This error typically implies that the servlet was originally compiled
> with a
> classes which cannot be located by the server.
> Check your classpath to ensure that all classes required by the servlet
> are
> present.
> This problem can be debugged by recompiling the servlet using only the
> classes in the application's runtime classpath
> Application
>
classpath=[/usr/lpp/WebSphere/WebServerPlugIn/lib:/usr/lpp/WebSphere/WebServ
> erPlugIn/lib/bsf.jar:/usr/lpp/WebSphere/WebServerPlugIn/lib/databeans.jar:
> /u
>
sr/lpp/WebSphere/WebServerPlugIn/lib/dertrjrt.jar:/usr/lpp/WebSphere/WebServ
>
erPlugIn/lib/ibmwebas.jar:/usr/lpp/WebSphere/WebServerPlugIn/lib/jsp10.jar:
> /
>
usr/lpp/WebSphere/WebServerPlugIn/lib/lotusxsl.jar:/usr/lpp/WebSphere/WebSer
>
verPlugIn/lib/servlet.jar:/usr/lpp/WebSphere/WebServerPlugIn/lib/xml4j.jar:
> /
>
usr/lpp/WebSphere/WebServerPlugIn/lib/RemoteWebAppClient.jar:/usr/lpp/WebSph
>
ere/WebServerPlugIn/lib/RemoteWebContainerClient.jar:/usr/lpp/WebSphere/WebS
>
erverPlugIn/properties:/usr/lpp/WebSphere/WebServerPlugIn/classes:/usr/lpp/
> W
>
ebSphere/lib/ws390crt.jar:/usr/lpp/java/IBM/J1.3/lib/tools.jar:/usr/lpp/java
>
/IBM/J1.3/lib/ext/RACF.jar:/was/common/classes:/was/common/classes/Sprinta20
>
00.jar:/usr/lpp/db2/db2710/classes/db2j2classes.zip:/usr/lpp/ldap/lib/ibmjnd
> i.jar:/usr/lpp/ldap/lib/jndi.jar:/web/classes/javamail/javamail-1.2/mail.
> jar
>
:/web/classes/javamail/jaf-1.0.1/activation.jar:/was/websrvd3/doa/erouting/
> s
> ervlets:/was/websrvd3/doa/erouting/servlets/commons-
> beanutils.jar:/was/websr
> vd3/doa/erouting/servlets/commons-
> collections.jar:/was/websrvd3/doa/erouting
> /servlets/commons-
> dbcp.jar:/was/websrvd3/doa/erouting/servlets/commons-diges
> ter.jar:/was/websrvd3/doa/erouting/servlets/commons-
> fileupload.jar:/was/webs
> rvd3/doa/erouting/servlets/commons-
> lang.jar:/was/websrvd3/doa/erouting/servl
> ets/commons-logging.jar:/was/websrvd3/doa/erouting/servlets/commons-pool.
> jar
> :/was/websrvd3/doa/erouting/servlets/commons-resources.jar:/was/websrvd3/
> doa
> /erouting/servlets/commons-
> validator.jar:/was/websrvd3/doa/erouting/servlets
> /core.jar:/was/websrvd3/doa/erouting/servlets/dom4j.jar:/was/websrvd3/doa/
> er
>
outing/servlets/hibernate.jar:/was/websrvd3/doa/erouting/servlets/hibernate2
> .jar:/was/websrvd3/doa/erouting/servlets/jakarta-
> oro.jar:/was/websrvd3/doa/e
>
routing/servlets/jdbc2_0-stdext.jar:/was/websrvd3/doa/erouting/servlets/log4
>
j-1.2.7.jar:/was/websrvd3/doa/erouting/servlets/mail.jar:/was/websrvd3/doa/
> e
>
routing/servlets/sax.jar:/was/websrvd3/doa/erouting/servlets/state_entities.
>
jar:/was/websrvd3/doa/erouting/servlets/struts.jar:/was/websrvd3/doa/eroutin
> g/servlets/struts-
> legacy.jar:/was/websrvd3/doa/erouting/servlets/struts_tag_
> ext.jar:/was/websrvd3/doa/erouting/servlets/utility.jar:/was/websrvd3/doa/
> er
>
outing/servlets/xercesImpl.jar:/was/websrvd3/doa/erouting/servlets/xmlParser
> APIs.jar:/was/websrvd3/doa/erouting/servlets/Sprinta2000.jar]
> at java.lang.Throwable.<init>(Throwable.java:104)
> at java.lang.Exception.<init>(Exception.java:52)
> at javax.servlet.ServletException.<init>(ServletException.java:132)
> at
> com.ibm.servlet.engine.webapp.WebAppServletManager.loadServlet
> (WebAppServlet
> Manager.java:70)
> at
> com.ibm.servlet.engine.webapp.WebAppServletManager.getServletReference
> (WebAp
> pServletManager.java:138)
> at
> com.ibm.servlet.engine.webapp.WebApp.getServletReference(WebApp.java:370)
> at
> com.ibm.servlet.engine.webapp.WebAppRequestDispatcherInfo.calculateInfo
> (WebA
> ppRequestDispatcherInfo.java:151)
> at
> com.ibm.servlet.engine.webapp.WebAppRequestDispatcherInfo.<init>
> (WebAppReque
> stDispatcherInfo.java:48)
> at
>
com.ibm.servlet.engine.webapp.WebApp.getRequestDispatcher(WebApp.java:1088)
> at
>
com.ibm.servlet.engine.srt.WebAppInvoker.handleInvocationHook(WebGroup.java:
> 982)
> at
> com.ibm.servlet.engine.invocation.CachedInvocation.handleInvocation
> (CachedIn
> vocation.java:69)
> at
> com.ibm.servlet.engine.srp.ServletRequestProcessor.dispatchByURI
> (ServletRequ
> estProcessor.java:176)
> at
> com.ibm.servlet.engine.oselistener.OSEListenerDispatcher.service
> (OSEListener
> .java:357)
> at
>
com.ibm.ws390.wc.redirector.WS390Redirector$WS390RedirectorDispatcher.servic
> e(WS390Redirector.java:1579)
> at
>
com.ibm.servlet.engine.oselistener.inproc.InProcAppServerDispatcher.service(
> InProcAppServerDispatcher.java:54)
> at
>
com.ibm.servlet.engine.oselistener.inproc.InProcThreadPrivateData.dispatchSe
> rvletRequest(InProcThreadPrivateData.java:144)
> at
> com.ibm.servlet.engine.oselistener.inproc.InProcPlugin.service
> (InProcPlugin.
> java:602)
>
> Oct 08, 2003 10:58:16.636 AM
> 3298e7c8:3db:620001:18:Thread[Thread-227703,5,main] WebGroup X Root
> Cause
> java.lang.NoClassDefFoundError:
> gov/wi/state/core/action/CoreActionServlet
> at java.lang.Class.newInstance0(Native Method)
> at java.lang.Class.newInstance(Class.java:262)
> at java.beans.Beans.instantiate(Beans.java:233)
> at java.beans.Beans.instantiate(Beans.java:77)
> at
> com.ibm.servlet.engine.webapp.WebAppServletManager.loadServlet
> (WebAppServlet
> Manager.java:64)
> at
> com.ibm.servlet.engine.webapp.WebAppServletManager.getServletReference
> (WebAp
> pServletManager.java:138)
> at
> com.ibm.servlet.engine.webapp.WebApp.getServletReference(WebApp.java:370)
> at
> com.ibm.servlet.engine.webapp.WebAppRequestDispatcherInfo.calculateInfo
> (WebA
> ppRequestDispatcherInfo.java:151)
> at
> com.ibm.servlet.engine.webapp.WebAppRequestDispatcherInfo.<init>
> (WebAppReque
> stDispatcherInfo.java:48)
> at
>
com.ibm.servlet.engine.webapp.WebApp.getRequestDispatcher(WebApp.java:1088)
> at
>
com.ibm.servlet.engine.srt.WebAppInvoker.handleInvocationHook(WebGroup.java:
> 982)
> at
> com.ibm.servlet.engine.invocation.CachedInvocation.handleInvocation
> (CachedIn
> vocation.java:69)
> at
> com.ibm.servlet.engine.srp.ServletRequestProcessor.dispatchByURI
> (ServletRequ
> estProcessor.java:176)
> at
> com.ibm.servlet.engine.oselistener.OSEListenerDispatcher.service
> (OSEListener
> .java:357)
> at
>
com.ibm.ws390.wc.redirector.WS390Redirector$WS390RedirectorDispatcher.servic
> e(WS390Redirector.java:1579)
> at
>
com.ibm.servlet.engine.oselistener.inproc.InProcAppServerDispatcher.service(
> InProcAppServerDispatcher.java:54)
> at
>
com.ibm.servlet.engine.oselistener.inproc.InProcThreadPrivateData.dispatchSe
> rvletRequest(InProcThreadPrivateData.java:144)
> at
> com.ibm.servlet.engine.oselistener.inproc.InProcPlugin.service
> (InProcPlugin.
> java:602)
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: commons-user-unsubscribe@jakarta.apache.org
> For additional commands, e-mail: commons-user-help@jakarta.apache.org
>
---------------------------------------------------------------------
To unsubscribe, e-mail: commons-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: commons-user-help@jakarta.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: commons-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: commons-user-help@jakarta.apache.org
Re: [Logging] LogConfigurationException - Log4JLogger does not im plem ent Log
Posted by petite_abeille <pe...@mac.com>.
On Tuesday, Oct 21, 2003, at 21:35 Europe/Amsterdam, Gramann, Cindy
wrote:
> I haven't been able to successfully convince our web admins to do
> that. Any
> other suggestions?
I guess I would agree with your admin reluctance to mess around with
any class path as their use should be prohibited in the first place...
In any case, you can add any jar you fancy at runtime for the JVM to
use. Usually, the default ClassLoader is an instance of
java.net.URLClassLoader which just so happen to provide an handy
addURL(URL url) method for you to use and abuse.
Cheers,
PA.
--
http://zoe.nu/
---------------------------------------------------------------------
To unsubscribe, e-mail: commons-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: commons-user-help@jakarta.apache.org