[prev in list] [next in list] [prev in thread] [next in thread] 

List:       log4j-dev
Subject:    svn commit: r734741 - /logging/log4j/trunk/src/site/fml/faq.fml
From:       carnold () apache ! org
Date:       2009-01-15 16:17:16
Message-ID: 20090115161716.417E9238889E () eris ! apache ! org
[Download RAW message or body]

Author: carnold
Date: Thu Jan 15 08:17:15 2009
New Revision: 734741

URL: http://svn.apache.org/viewvc?rev=734741&view=rev
Log:
Bug 43867: Update Tomcat NPE FAQ

Modified:
    logging/log4j/trunk/src/site/fml/faq.fml

Modified: logging/log4j/trunk/src/site/fml/faq.fml
URL: http://svn.apache.org/viewvc/logging/log4j/trunk/src/site/fml/faq.fml?rev=734741&r1=734740&r2=734741&view=diff
 ==============================================================================
--- logging/log4j/trunk/src/site/fml/faq.fml (original)
+++ logging/log4j/trunk/src/site/fml/faq.fml Thu Jan 15 08:17:15 2009
@@ -789,27 +789,23 @@
               when shutting down or restarting under Tomcat or during a shutdown
               hook?</question>
           <answer><p>Tomcat will, by default,
-             clear all static members when unloading classes.
-             Unfortunately, under certain circumstances
-             another class may attempt to call log4j after log4j
-             has had its private member variables cleared, resulting in either
-             a NullPointerException (log4j 1.2.14 or earlier) or a console
-             message (log4j 1.2.15 and later).  The same type of issue
-             has been reported during various shutdown hooks (see bug
-             <a href="http://issues.apache.org/bugzilla/show_bug.cgi?id=40212">40212</a>)
                
-             but the mechanisms are not as well understood.</p>
+             clear all static members when unloading classes, however
+             this process can trigger initialization of classes which may
+             then call a class that has been cleared resulting in a
+             NullPointerException or some undesirable behavior.
+             Bug <a \
href="http://issues.apache.org/bugzilla/show_bug.cgi?id=40212">40212</a>) +           \
describes the problem in detail and has a patch which at this writing +              \
has not been applied to Tomcat.  Glassfish had a similar problem +             and \
accepted the patch.</p>  
-             <p>The following have been recommended to avoid this problem:
+             <p>The following are recommended to avoid this problem:
                  <ol>
                      <li>Set the \
org.apache.catalina.loader.WebappClassLoader.ENABLE_CLEAR_REFERENCES  system property \
to false.</li> +                     <li>Apply the patch from bug <a \
href="http://issues.apache.org/bugzilla/show_bug.cgi?id=40212">40212</a> +            \
                or upgrade to a version that has that patch applied.</li>
                      <li>Upgrade to log4j 1.2.16 or later to better defend against \
                class loader attack
                          or provide a better diagnostic message when it does \
                occur.</li>
-                     <li>Use per-application copies of log4j, that is remove \
                log4j.jar from WEB-INF/lib.</li>
-                     <li>Avoid calls to log4j from within class initialization.</li>
-                     <li>Upgrade to the latest version of the framework that causing \
                the problem.</li>
-                     <li>Use EnhancedPatternLayout from the extras companion when \
                the NPE occurs
-                         in a call of PatternLayout.</li>
                  </ol>
              </p>
 



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


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic