cvc-complex-type.3.2.2: Attribute 'uuid' is not allowed to appear in element 'jasperReport'.

rwolf

Bekanntes Mitglied
hi all,

ich habe einen simplen report ohne Parameter mit iReport erstellt,
Preview einwandfrei.

Aus einer früher erstellten JavaSE-Anwendung habe ich mir die
erforderlichen Module und Libs kopiert und gemeint, das müsse
ja nun easy laufen..weit gefehlt !

Hier die Codeblöcke mit den Aufrufen :
Java:
            case BTN_DRUCKEN :
            {
                Hashtable params = new Hashtable();
                params.clear();
                ts_print_sw.prepare_print(menu_code,params);
                break;
            }
Java:
    public static void prepare_print(int menu_code, Hashtable params)
    {
        //- Druckvorbereitung --------------------------
        String reportsource = "";
        String rpt_path = mps.REPORT_PATH + "/";
        //System.out.println("ts_print_switch prepare_print menucode : "+menu_code);
        switch(menu_code)
        {
            case 201 :
            {
                //- Bearbeiter drucken
                reportsource = rpt_path + db_ref.rptnames[db_ref.RPT_403_1_BEARBEITER];
                break;
            }


            case 202 :
            {
                //- Artikel -> Artikelmeth drucken
                //System.out.println("EAL Mod2 Drucke Artikelident mit Filter auf QAMATCH: " +params.toString());
                //reportsource = rpt_path + db_ref.rptnames[db_ref.RPT_202_0_ARTSPEZ];
                break;
            }

            case 203 :                              //- Methoden -------------------------------
            {
                //reportsource = "reports/rpt_mss_methoden_DE.jrxml";
                //reportsource = rpt_path + db_ref.rptnames[db_ref.RPT_203_0_METHODEN];
                break;
            }

        }
        System.out.println("Drucke Report von App "+menu_code+" Pfad : " + reportsource);
        iReportManager.handle_ipeport_m(reportsource,params);
    }
    
}

Java:
/*------------------------------------------
* @file		:	iReportManager.java;
* @author/user	:	W.W.Fietz TechnoSoft Hofbieber
* @comment	:	Interfacecode zu Jasper-Reports/iReport
* @since	:	10.07.2012
* @comment	:       mit Netbeans 7.0.1 (SUN) entwickelt
*******************************************/

package kister_basetables;

import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
import java.io.*;
import java.util.*;
import java.lang.*;

import java.sql.*;

import net.sf.jasperreports.engine.*;
import net.sf.jasperreports.engine.JasperCompileManager;
import net.sf.jasperreports.engine.JasperFillManager;
import net.sf.jasperreports.engine.JasperPrint;
import net.sf.jasperreports.engine.JasperReport;
import net.sf.jasperreports.engine.xml.JRXmlLoader;
import net.sf.jasperreports.engine.design.JasperDesign;

import net.sf.jasperreports.view.JasperViewer;
import net.sf.jasperreports.engine.JasperPrintManager;

import org.jfree.chart.JFreeChart.*;


public class iReportManager extends javax.swing.JFrame
{
    private static my_progshell1 mps;
    private static dbiface dbif;
    //private static my_pc_utils_I mu1;
    private String fName = "";

    /** Creates new form iReportManager */
    public iReportManager(String args[]) {
        initComponents();
                jButton1.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent e)
			{
                            iRpt_frame_schliessen();
                        }
                });
        String fileName = args[0];
        handle_ipeport_m (fileName,null);

    }

    /** This method is called from within the constructor to
     * initialize the form.
     * WARNING: Do NOT modify this code. The content of this method is
     * always regenerated by the Form Editor.
     */
    @SuppressWarnings("unchecked")
    // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
    private void initComponents() {

        jPanel1 = new javax.swing.JPanel();
        jButton1 = new javax.swing.JButton();

        setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);

        javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(jPanel1);
        jPanel1.setLayout(jPanel1Layout);
        jPanel1Layout.setHorizontalGroup(
            jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGap(0, 400, Short.MAX_VALUE)
        );
        jPanel1Layout.setVerticalGroup(
            jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGap(0, 294, Short.MAX_VALUE)
        );

        getContentPane().add(jPanel1, java.awt.BorderLayout.CENTER);

        jButton1.setText(org.openide.util.NbBundle.getMessage(iReportManager.class, "iReportManager.jButton1.text")); // NOI18N
        getContentPane().add(jButton1, java.awt.BorderLayout.PAGE_START);

        pack();
    }// </editor-fold>//GEN-END:initComponents

    /**
    * @param args the command line arguments
    */
    private void iRpt_frame_schliessen()
    {
        dispose();
    }
    
    // Variables declaration - do not modify//GEN-BEGIN:variables
    private javax.swing.JButton jButton1;
    private javax.swing.JPanel jPanel1;
    // End of variables declaration//GEN-END:variables
    public static void handle_ipeport_m (String fileName, Hashtable params)
    {

        if(fileName.isEmpty())
            fileName = "C:/Java_projekte/rpt_moonII_bearbeiter_DE.jrxml";

        String endung = ".jrxml";
        String pureName = fileName.substring(0, fileName.indexOf(endung));

        JasperReport jasperReport;

        String repName = pureName+".jasper";
        System.out.println("iReptManager Datei : "+fileName+" Datei : "+pureName+" RepName : "+repName);
        File f_app = new File(repName);
        try
        {
            if(params instanceof Hashtable)
                System.out.println("iReptManager Datei : "+fileName+" Parameter : " +params.toString());
            else
                System.out.println("uebergebener Reportname : "+ fileName);
            FileReader fr = new FileReader(fileName);

            Connection con = dbif.get_gen_con();

            JasperDesign jasperDesign = JRXmlLoader.load(fileName);

            jasperReport = JasperCompileManager.compileReport(jasperDesign);

            JasperPrint jasperPrint = JasperFillManager.fillReport(jasperReport, params, con);

            if(mps.g_print_preview)
                JasperViewer.viewReport(jasperPrint,false);
            else
                JasperPrintManager.printReport(jasperPrint, mps.g_printer_choice);

         }
         catch (java.io.FileNotFoundException fnf)
         {
            System.out.println("Report-Datei " + fileName + " konnte nicht gefunden werden !");
            mps.msgbox("EAL ReportManager Report nicht gefunden : "+fileName);
         }
         catch(Exception e)
         {
            e.printStackTrace();
         }

    }

}

und hier der trace:
log4j:WARN No appenders could be found for logger (net.sf.jasperreports.engine.xml.JRXmlDigesterFactory).
log4j:WARN Please initialize the log4j system properly.
net.sf.jasperreports.engine.JRException: org.xml.sax.SAXParseException: cvc-complex-type.3.2.2: Attribute 'uuid' is not allowed to appear in element 'jasperReport'.
at net.sf.jasperreports.engine.xml.JRXmlLoader.loadXML(JRXmlLoader.java:245)
at net.sf.jasperreports.engine.xml.JRXmlLoader.loadXML(JRXmlLoader.java:228)
at net.sf.jasperreports.engine.xml.JRXmlLoader.load(JRXmlLoader.java:216)
at net.sf.jasperreports.engine.xml.JRXmlLoader.load(JRXmlLoader.java:170)
at net.sf.jasperreports.engine.xml.JRXmlLoader.load(JRXmlLoader.java:154)
at kister_basetables.iReportManager.handle_ipeport_m(iReportManager.java:135)
at kister_basetables.ts_print_switch.prepare_print(ts_print_switch.java:64)
at kister_basetables.ts_basetable_managerII.mt_btn_actions(ts_basetable_managerII.java:281)
at kister_basetables.ts_basetable_managerII.access$000(ts_basetable_managerII.java:28)
at kister_basetables.ts_basetable_managerII$4.actionPerformed(ts_basetable_managerII.java:219)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1995)
at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2318)
at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:387)
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:242)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:236)
at java.awt.Component.processMouseEvent(Component.java:6267)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3267)
at java.awt.Component.processEvent(Component.java:6032)
at java.awt.Container.processEvent(Container.java:2041)
at java.awt.Component.dispatchEventImpl(Component.java:4630)
at java.awt.Container.dispatchEventImpl(Container.java:2099)
at java.awt.Component.dispatchEvent(Component.java:4460)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4577)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4238)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4168)
at java.awt.Container.dispatchEventImpl(Container.java:2085)
at java.awt.Window.dispatchEventImpl(Window.java:2478)
at java.awt.Component.dispatchEvent(Component.java:4460)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:599)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)
Caused by: org.xml.sax.SAXParseException: cvc-complex-type.3.2.2: Attribute 'uuid' is not allowed to appear in element 'jasperReport'.
at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:195)
at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.error(ErrorHandlerWrapper.java:131)
at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:384)
at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:318)
at com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaValidator$XSIErrorReporter.reportError(XMLSchemaValidator.java:417)
at com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaValidator.reportSchemaError(XMLSchemaValidator.java:3182)
at com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaValidator.processAttributes(XMLSchemaValidator.java:2659)
at com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaValidator.handleStartElement(XMLSchemaValidator.java:2066)
at com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaValidator.startElement(XMLSchemaValidator.java:705)
at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanStartElement(XMLNSDocumentScannerImpl.java:400)
at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl$NSContentDriver.scanRootElementHook(XMLNSDocumentScannerImpl.java:626)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:3103)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$PrologDriver.next(XMLDocumentScannerImpl.java:922)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:648)
at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:140)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:511)
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:808)
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737)
at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:119)
at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205)
at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522)
at org.apache.commons.digester.Digester.parse(Digester.java:1647)
at net.sf.jasperreports.engine.xml.JRXmlLoader.loadXML(JRXmlLoader.java:241)
... 34 more

die ersten beiden Warnings haben beim "alten" Programm kein Problem bereitet, Reports laufen dort ok !
aber vielleicht weiß auch jemand, wie ich die weg kriege bzw. was da wie initialisiert werden soll..

im iReport-Tool seh ich nix von 'uuid'..

danke schon mal im vorraus !
mfG
wolf
 
Zuletzt bearbeitet:

rwolf

Bekanntes Mitglied
wenn ich in das jrxml-file schaue,
sehe ich im kopf und bei jedem Ausgabefeld 'uuid=..hexcode..'
wenn ich das manuell rausschmeiße, ist die fehlermeldung weg,
aber das kann ja wohl nicht sein :)

irgendein property, wo ich das beeinflussen kann ?
oder ein bug bei meinem iReport 4.6.0 (auf Win7 64bit) ?

die hilfe von iReport kann man dazu vergessen...
 
N

nillehammer

Gast
Code:
log4j:WARN No appenders could be found for logger (net.sf.jasperreports.engine.xml.JRXmlDigesterFactory).
log4j:WARN Please initialize the log4j system properly.
die ersten beiden Warnings haben beim "alten" Programm kein Problem bereitet, Reports laufen dort ok !
aber vielleicht weiß auch jemand, wie ich die weg kriege bzw. was da wie initialisiert werden soll..
In der log4j.properties definierst Du verschiedene Appender. Weiterhin definierst Du, für welche Klassen/Packages log4j welche Appenders nehmen soll. Für
Code:
net.sf.jasperreports.engine.xml.JRXmlDigesterFactory
hat log4j keinen Appender gefunden. Konfigurier entweder einen speziellen oder konfiguriere einen sog. root-Logger.
Code:
net.sf.jasperreports.engine.JRException: org.xml.sax.SAXParseException: cvc-complex-type.3.2.2: Attribute 'uuid' is not allowed to appear in element 'jasperReport'.
Es gibt offensichtlich ein XML-Schema oder eine DTD für jrxml-Dateien. Diese erlauben im Element jasperReport kein Attribut uuid. Sowas geht also nicht:
[XML]
<jasperReport uuid="...">
[/XML]
Warum das früher ging? Vielleicht hat Dein alter Parser nicht validiert.
[EDIT]
Habe nochmal nach der Schema-Referenz gesucht. Hier findest Du es übersichtlich aufbereitet, was erlaubt ist: JasperReports 4.5.1 - Schema Reference
[/EDIT]
 
Zuletzt bearbeitet von einem Moderator:

rwolf

Bekanntes Mitglied
also, das Problem kommt nur mit der Version 1.6.0 von iReport;
vorerst konnte ich das uuid-Problem mit Reportdesign in der Version 1.5.0 umgehen;

letztendlich muß wohl sowohl JasperReport in der neuesten Version UND
das iReport 1.6.0 (ist bereits die neueste Version ) zusammenspielen...

na dann..
 

Beo

Neues Mitglied
Hallo,

hatte das selbe Problem mit den uuids. Nach der installation der neuen iReport version haben ich die alten Settings importiert und dabei wurden auch die classpaths übernommen. Daher wurden die alten 4.1.1. jar Dateien verwendet.

Also um das Problem zu beheben:

1. Extas / Optionen / Classpath => alte raus und aktuellen Pfad rein.
2. Extas / Optionen / JasperReports Properties => net.sf.jasperreports.compiler.classpath anpassen

Hoffe geholfen zu haben,

mfg, Beo
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
H XMLConfiguration(1.10)/getString : Wert "E" aus <version type="Auto">E</version>n lesen XML & JSON 15
T Rest-API Status-Code 415: Unsupported Media Type XML & JSON 3
H XML Can't determine type for tag XML & JSON 3
iman XML Attribute mit JAVA einlesen mit Spring Batch XML & JSON 0
L Transformer verschluckt Attribute bei der Ausgabe XML & JSON 3
W XML einlesen und Attribute auslesen XML & JSON 1
D Attribute aus XML Auslesen XML & JSON 5
P Xpath zugriff auf Attribute XML & JSON 3
C JAXB: XML-Elemente einlesen und als XML-Attribute ausgeben XML & JSON 7
F EMF, XSD to ECore mapping, Attribute vs. Element XML & JSON 2
A XML-Attribute vergleichen XML & JSON 4
Helgon MalformedByteSequenceException und null JDOM Attribute XML & JSON 5
G JAXB XML-Attribute feststellen XML & JSON 4
2 wie komme ich an die Attribute XML & JSON 3
S Attribute von Elementen auslesen mit XPath XML & JSON 2
B 2 Attribute in einer xsl XML & JSON 2
M Gegenseitig ausschließende Attribute definieren in XSD XML & JSON 7
C DOM: Attribute nicht in alphabetischer Reihenfolge schreiben XML & JSON 3
eQuest XML Jaxen Attribute auslesen XML & JSON 2
C Mit SAX Parser XML Attribute auswerten XML & JSON 3
H XML Attribute auslesen XML & JSON 5
S JAXB und viele verschachtelte Attribute XML & JSON 1
G xquery - nodes unterscheiden sich nur durch attribute :-( XML & JSON 4
L Objekt Serialisierung: Schreiben aller Attribute erzwingen XML & JSON 5
E EMF Modell um alle möglichen Attribute auszulesen XML & JSON 12
S XSD: restriction und attribute gleichzeitig XML & JSON 4
V XMLEncoder: Attribute nicht serialisieren XML & JSON 2
D Wie kann ich Namespace Attribute in den Elementen entfernen? XML & JSON 2
M Attribute parsen XML & JSON 6
D JDOM erzeugt leere xmlns Attribute XML & JSON 4
B jdom outputter ohne attribute XML & JSON 2
G Wie Attribute aus XML in ein Model schreiben (StAX)? XML & JSON 7
P Knoten-Attribute einer xsd-Datei in einem JTree auslesen XML & JSON 18
M attribute funken nicht XML & JSON 3
R Jtree + Attribute XML & JSON 6
Z DOM: Attribute in Knoten schreiben XML & JSON 2

Ähnliche Java Themen

Neue Themen


Oben