log4j:FEHLER aufgetreten beim konvertieren von Datum
Fand ich diese Ausnahme in meinen logs:
log4j:FEHLER aufgetreten beim konvertieren von Datum.
java.lang.NullPointerException
bei java.lang.System.arraycopy(Native Method)
bei java.lang.AbstractStringBuilder.getChars(AbstractStringBuilder.java:328)
bei java.lang.StringBuffer.getChars(StringBuffer.java:201)
bei org.apache.log4j.Helferinnen und Helfer.ISO8601DateFormat.format(ISO8601DateFormat.java:130)
bei java.text.DateFormat.format(DateFormat.java:316)
bei org.apache.log4j.Helferinnen und Helfer.PatternParser$DatePatternConverter.konvertieren(PatternParser.java:443)
bei org.apache.log4j.Helferinnen und Helfer.PatternConverter.format(PatternConverter.java:65)
bei org.apache.log4j.PatternLayout.format(PatternLayout.java:506)
bei org.apache.log4j.WriterAppender.subAppend(WriterAppender.java:310)
bei org.apache.log4j.WriterAppender.append(WriterAppender.java:162)
bei org.apache.log4j.AppenderSkeleton.doAppend(AppenderSkeleton.java:251)
bei org.apache.log4j.Helferinnen und Helfer.AppenderAttachableImpl.appendLoopOnAppenders(AppenderAttachableImpl.java:66)
bei org.apache.log4j.Kategorie.callAppenders(Kategorie.java:206)
bei org.apache.log4j.Kategorie.forcedLog(Kategorie.java:391)
bei org.apache.log4j.Category.info(Kategorie.java:666)
bei org.obliquid.db.ConnectionManager.releaseConnection(ConnectionManager.java:313)
bei org.obliquid.db.ConnectionManager.finalize(ConnectionManager.java:331)
bei java.lang.ref.Finalizer.invokeFinalizeMethod(Native-Methode)
bei java.lang.ref.Finalizer.runFinalizer(Finalizer.java:83)
bei java.lang.ref.Finalizer.access$100(Finalizer.java:14)
bei java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:160)
Ich denke, es könnte verursacht werden durch meine log4j.Datei Eigenschaften, insbesondere durch ConversionPattern. Jede Idee, wie Sie zu beheben?
#Updated at Wed Sep 14 21:57:51 CEST 2011
#Wed Sep 14 21:57:51 CEST 2011
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.rootLogger=INFO, stdout
log4j.appender.R.File=yamweb.log
log4j.appender.R.MaxFileSize=1000KB
log4j.appender.R.layout=org.apache.log4j.PatternLayout
log4j.appender.R.MaxBackupIndex=1
log4j.appender.R.layout.ConversionPattern=%p %t %c - %m%n
log4j.appender.R=org.apache.log4j.RollingFileAppender
log4j.appender.stdout.layout.ConversionPattern=%d [%t] %-5p %c - %m%n
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.logger.yamweb=DEBUG
log4j.logger.org.springframework=INFO
log4j.logger.org.springframework.beans=DEBUG
log4j.logger.com.amazonaws=WARN
UPDATE: Tatsächlich, der Blick auf die PatternLayout JavaDoc, ich will nicht einmal erwähnen, ein Datum-format.
d Verwendet, um das Datum Ausgabe der logging-event. Das Datum umwandlungsspezifikator werden kann, gefolgt von einem Datum-format-Bezeichner, eingeschlossen in Klammern. Beispiel: %d{HH:mm:ss,SSS} und %d{dd MMM yyyy HH:mm:ss,SSS}. Wenn kein Datum-format-Bezeichner angegeben wird, dann nach ISO8601-format ausgegangen wird.
Habe ich eine explizite Konvertierung Muster: %d{yyyy-MM-dd HH:mm:ss} [%t] %p %c - %m%n
-- betrachten Sie das Protokoll, und ich werde Sie wissen lassen, wenn es hilft.
UPDATE 2: das problem nicht mehr passieren.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Es scheint dies eine sehr seltene situation. Googeln für den Fehler erwies sich die folgende Diskussion von 2006, etwas zu tun mit der Klasse un-be:
http://comments.gmane.org/gmane.comp.jakarta.log4j.user/13835
EDIT: Siehe Frage oben für eine Lösung:
Diese auch zu funktionieren schien für die folgende Frage: NPE mit Perf4j und Log4j.
Ich habe gerade stolperte über diese Ausnahme, und es wurde gelöst durch das entfernen
log4j.jar
aus dem portlet (oder servlet, was auch immer) Ordner.Ich weiß, es ist ein Alter thread, aber ich fixe das problem durch einen Neustart der server. Ja, Klischee-Antwort, aber einen Versuch Wert