You are viewing a plain text version of this content. The canonical link for it is here.
Posted to log4j-dev@logging.apache.org by Jacob Kjome <ho...@visi.com> on 2004/12/09 07:18:21 UTC

null pointer in FixedWindowRollingPolicy

At 03:33 PM 12/8/2004 +0000, you wrote:
 >ceki        2004/12/08 07:33:23
 >
 >  Modified:    src/java/org/apache/log4j/rolling/helper
 >                        FileNamePattern.java IntegerTokenConverter.java
 >               tests/src/java/org/apache/log4j/rolling
 >                        SizeBasedRollingTest.java
 >  Added:       src/java/org/apache/log4j/rolling
 >                        FixedWindowRollingPolicy.java
 >  Removed:     src/java/org/apache/log4j/rolling
 >                        SlidingWindowRollingPolicy.java
 >  Log:
 >  - Renamed SlidingWindowRollingPolicy as FixedWindowRollingPolicy.
 >  - Improved documentation for FixedWindowRollingPolicy.

FixedWindowRollingPolicy currently bombs out because it never bothers to 
set the fileNamePattern property.  It is currently treated as optional, but 
multiple places in FixedWidowRollingPolicy require it to not be null.  I 
guess it should be doing a check more like TimeBasedRollingPolicy.  I 
hesitate to change this myself.  I suspect it would be reverted anyway.

Here's a nifty stack trace...

java.lang.ExceptionInInitializerError
         at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native 
Method)
         at 
sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
         at 
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
         at java.lang.reflect.Constructor.newInstance(Constructor.java:274)
         at java.lang.Class.newInstance0(Class.java:308)
         at java.lang.Class.newInstance(Class.java:261)
         at org.apache.catalina.startup.Bootstrap.init(Bootstrap.java:201)
         at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:386)
Caused by: org.apache.commons.logging.LogConfigurationException: 
java.lang.ExceptionInInitializerError (Caused by 
java.lang.ExceptionInInitializerError)
         at 
org.apache.commons.logging.impl.LogFactoryImpl.newInstance(LogFactoryImpl.java:538)
         at 
org.apache.commons.logging.impl.LogFactoryImpl.getInstance(LogFactoryImpl.java:235)
         at 
org.apache.commons.logging.impl.LogFactoryImpl.getInstance(LogFactoryImpl.java:209)
         at org.apache.commons.logging.LogFactory.getLog(LogFactory.java:351)
         at 
org.apache.catalina.core.StandardService.<clinit>(StandardService.java:53)
         ... 8 more
Caused by: java.lang.ExceptionInInitializerError
         at org.apache.log4j.Logger.getLogger(Logger.java:64)
         at 
org.apache.commons.logging.impl.Log4JLogger.getLogger(Log4JLogger.java:229)
         at 
org.apache.commons.logging.impl.Log4JLogger.<init>(Log4JLogger.java:65)
         at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native 
Method)
         at 
sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
         at 
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
         at java.lang.reflect.Constructor.newInstance(Constructor.java:274)
         at 
org.apache.commons.logging.impl.LogFactoryImpl.newInstance(LogFactoryImpl.java:529)
         ... 12 more
Caused by: java.lang.NullPointerException
         at 
org.apache.log4j.rolling.FixedWindowRollingPolicy.activateOptions(FixedWindowRollingPolicy.java:100)
         at 
org.apache.joran.action.NestComponentIA.end(NestComponentIA.java:129)
         at org.apache.joran.Interpreter.callEndAction(Interpreter.java:234)
         at org.apache.joran.Interpreter.endElement(Interpreter.java:138)
         at org.apache.xerces.parsers.AbstractSAXParser.endElement(Unknown 
Source)
         at 
org.apache.xerces.impl.dtd.XMLDTDValidator.endNamespaceScope(Unknown Source)
         at 
org.apache.xerces.impl.dtd.XMLDTDValidator.handleEndElement(Unknown Source)
         at org.apache.xerces.impl.dtd.XMLDTDValidator.endElement(Unknown 
Source)
         at 
org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanEndElement(Unknown 
Source)
         at 
org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown 
Source)
         at 
org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown 
Source)
         at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
         at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
         at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
         at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
         at javax.xml.parsers.SAXParser.parse(Unknown Source)
         at 
org.apache.log4j.joran.JoranConfigurator.doConfigure(JoranConfigurator.java:181)
         at 
org.apache.log4j.joran.JoranConfigurator.doConfigure(JoranConfigurator.java:159)
         at 
org.apache.log4j.joran.JoranConfigurator.doConfigure(JoranConfigurator.java:100)
         at 
org.apache.log4j.helpers.OptionConverter.selectAndConfigure(OptionConverter.java:534)
         at 
org.apache.log4j.helpers.IntializationUtil.initialConfiguration(IntializationUtil.java:85)
         at org.apache.log4j.LogManager.<clinit>(LogManager.java:113)
         ... 20 more


Jake 


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


Re: null pointer in FixedWindowRollingPolicy

Posted by Ceki Gülcü <ce...@qos.ch>.
At 07:18 AM 12/9/2004, Jacob Kjome wrote:
>At 03:33 PM 12/8/2004 +0000, you wrote:
> >ceki        2004/12/08 07:33:23
> >
> >  Modified:    src/java/org/apache/log4j/rolling/helper
> >                        FileNamePattern.java IntegerTokenConverter.java
> >               tests/src/java/org/apache/log4j/rolling
> >                        SizeBasedRollingTest.java
> >  Added:       src/java/org/apache/log4j/rolling
> >                        FixedWindowRollingPolicy.java
> >  Removed:     src/java/org/apache/log4j/rolling
> >                        SlidingWindowRollingPolicy.java
> >  Log:
> >  - Renamed SlidingWindowRollingPolicy as FixedWindowRollingPolicy.
> >  - Improved documentation for FixedWindowRollingPolicy.
>
>FixedWindowRollingPolicy currently bombs out because it never bothers to 
>set the fileNamePattern property.  It is currently treated as optional, 
>but multiple places in FixedWidowRollingPolicy require it to not be 
>null.  I guess it should be doing a check more like 
>TimeBasedRollingPolicy.  I hesitate to change this myself.  I suspect it 
>would be reverted anyway.

Forgot to check in the corrected code before leaving last
night. I'll commit the fix shortly.

With respect to the NOPAction, I put it back in examples/ because it
serves an educational purpose. (It shows what you need to implement an
Action. As such, it should be placed conveniently within the
tutorial itself.) However, your message was paid attention to. There is a
copy of NOPAction in tests/ as well.



>Jake

-- 
Ceki Gülcü

  The complete log4j manual:  http://qos.ch/log4j/  



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