tomcat-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Costin Manolache <cmanola...@yahoo.com>
Subject Re: commons-logging infinite loop w/5.5.9
Date Wed, 24 Aug 2005 14:36:02 GMT
Nathan Bubna wrote:
> On 8/23/05, Remy Maucherat <remm@apache.org> wrote:
> 
>>Nathan Bubna wrote:
>>
>>>hey folks,
>>>
>>>i'm a developer on the VelocityTools subproject, and we recently came
>>>across an issue with the use of commons-logging in Tomcat 5.5.9.
>>>
>>>by default, we configure our example applications to use an adapter
>>>between commons-logging and Velocity's LogSystem.  this way, those of
>>>our tools which require logging are able to send messages to
>>>commons-logging and they get passed of to the LogSystem that the rest
>>>of Velocity is using (without having to pass that LogSystem around).
>>>We also, by default, configure our VelocityViewServlet (the core class
>>>of VelocityTools) to automatically send LogSystem messages to the
>>>servlet log.
>>>
>>>so, messages sent to c-l are sent the the Velocity LogSystem which
>>>sends the messages to the servlet log.
>>>
>>>this works just dandy for everyone in Tomcat 5.0.x, but when we deploy
>>>our very minimal example applications in Tomcat 5.5.9, we promptly
>>>receive stack overflows and out of memory errors that appear to be a
>>>nasty little commons-logging loop.
>>>
>>>can somebody help me figure out what change between 5.0 and 5.5 is
>>>causing this?  and further, what can be done about it?  i'm still not
>>>even sure whether to consider this a bug in our design or in Tomcat.
>>>
>>>any help would be much appreciated!
>>
>>In Tomcat 5.5, everything is logged to commons-logging, so the loop you
>>get is to be expected.
> 
> 
> so, i guess that means web applications/frameworks that wish to work
> with Tomcat 5.5 must either not redirect commons-logging messages to
> their own logging solution or else they must not use
> servletContext.log(...) as a target for their logging solution,
> correct?
> 

Seems so - since servletContext.log() call commons-logging, not a good 
idea to use an impl. of commons-logging that eventually calls 
servletContext.log().
Maybe a better solution would be to have the Velocity LogSystem send 
messages to commons-logging, then everything will go to c-l and the 
chosen impl.

Costin


---------------------------------------------------------------------
To unsubscribe, e-mail: tomcat-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tomcat-dev-help@jakarta.apache.org


Mime
View raw message