2016-08-19 1 views
1

Ich müsste Jasper Reports debuggen, um wissen zu können, warum mein Bericht leer erscheint. Nun, er zeigt nur statische Informationen plus Parameter an, aber ich habe einen Unterbericht, der einige Informationen und diesen Teil auflisten soll ist leer.Wie protokolliert man Jasper Reports (Log4j2.xml Config) zum Debuggen?

Nach einigen Beispielen im Web ich folgende log4j2.xml Konfigurationsdatei verwendet habe, aber:

  1. ich keine Protokolldatei erstellen, na ja, die Datei erstellt wird, aber es bleibt leer.
  2. Wie konfiguriere ich, um Ausgabe-Debug von Jasper Reports zu erhalten? Wenn der Unterbericht leer ist, denke ich, dass er irgendwo fehlschlagen muss, also muss ich herausfinden, was vor sich geht.

Hier ist meine log4j2.xml Konfigurationsdatei:

<?xml version="1.0" encoding="UTF-8"?> 
<Configuration status="debug"> 
    <Properties> 
     <Property name="basePath">E:\\logs</Property> 
    </Properties> 

    <Appenders> 
     <RollingFile name="fileLogger" fileName="${basePath}/urnavirtual.log" filePattern="${basePath}/urnavirtual-%d{yyyy-MM-dd}.log"> 
      <PatternLayout> 
       <pattern>[%-5level] %d{yyyy-MM-dd HH:mm:ss.SSS} [%t] %c{1} - %msg%n</pattern> 
      </PatternLayout> 
      <Policies> 
       <TimeBasedTriggeringPolicy interval="1" modulate="true" /> 
      </Policies> 
     </RollingFile> 

     <Console name="console" target="SYSTEM_OUT"> 
      <PatternLayout pattern="[%-5level] %d{yyyy-MM-dd HH:mm:ss.SSS} [%t] %c{1} - %msg%n" /> 
     </Console> 
    </Appenders> 
    <Loggers> 
     <Logger name="net.sf.jasperreports" level="ALL" additivity="false"> 
      <appender-ref ref="fileLogger" level="ALL" /> 
     </Logger> 
     <Root level="ALL" additivity="false"> 
      <appender-ref ref="console" /> 
     </Root> 
    </Loggers> 
</Configuration> 

In meinem letzten Test ich Logger mit "net.sf.jasperreports" hinzugefügt, aber ich denke, ist etwas nicht gut konfiguriert.

  1. Gibt es eine Eigenschaft, die gesetzt werden sollte, damit Jasper Reports weiß, dass es ihre internen Fehler protokollieren muss?
  2. Welche Änderungen sollte ich in meiner log4j2.xml-Datei verwenden, erfolgreich Fehler Jasper Bericht

Ich verwende Eclipse-Neon mit Java 8.

Dies ist meine erste Frage so zu protokollieren, ich entschuldige mich, wenn Ich bin nicht klar oder ich bin gegen eine der StackOverFlow-Regeln.

Vielen Dank,

Edited: Ich habe bereits log4j, aber auch mit level = DEBUG, bekomme ich keine Debug-Ausgabe in Protokollen.

+0

Mögliche Duplikat von [Wie Jaspis Berichte debuggen?] (Http://stackoverflow.com/questions/ 10090254/how-to-debug-jasper-reports) –

+0

Hallo, Alex, danke, dass du dir Zeit genommen hast, nein, es ist nicht doppelt vorhanden; Der Thread, auf den Sie hinweisen, in der einzigen Antwort dieses Threads schlagen sie vor, log4j zu verwenden, der Unterschied ist, dass ich ihn bereits benutze, aber ich konnte keine Debug-Meldungen sehen, mit Tonakai-Antwort, die ich konnte siehe Debug-Meldungen in Protokollen. Tonakai antwortete markiert als akzeptiert. – OZWolverine

Antwort

0

Da jasper reports log4j verwendet, müssen Sie eine Bridge für log4j 2 verwenden, um ordnungsgemäß zu funktionieren. versuchen log4j-1.2-api.jar hinzuzufügen: apache page for the bridge

Maven Details, wenn Sie es verwenden: maven repository

+0

Vielen Dank Tonakai, log4j-1.2-api.jar hinzufügen, zeigt jetzt Debug-Meldungen im Protokoll an. :) – OZWolverine

+0

Prost, glücklich, dass es funktioniert – tonakai

+0

Hallo @tonakai, auch wenn dies für Jaspis Berichte funktionierte die anderen Appender nicht zu Protokolldateien schreiben, wie ich sagte, sie sind erstellt, aber es gibt keine Ausgabe. Weißt du, was könnte das sein? Soll ich einen anderen Thread starten, um das zu fragen? – OZWolverine

Verwandte Themen