Salve a tutti,
ho la necessità di utilizzare Jasper Reports per creare dei reports attaverso un template predefinito, pertanto ho seguito la guida proposta da html.it, scaricato tutte le librerie classi eccc.
Ho copiato il soguente codice in un file .java e l'ho compilato:
import java.lang.*;
import java.sql.Connection;
import java.sql.DriverManager;
import net.sf.jasperreports.engine.JasperCompileManager;
import net.sf.jasperreports.engine.JasperExportManager;
import net.sf.jasperreports.engine.JasperFillManager;
import net.sf.jasperreports.engine.JasperPrint;
import net.sf.jasperreports.engine.design.JasperDesign;
import net.sf.jasperreports.engine.xml.JRXmlLoader;
public class TestJR
{
public static String JASPER_REPORT_FOLDER = "/Users/simo/";
public static String JASPER_FILENAME = "ProvaSimoTemp";
public static String DRIVER = "com.mysql.jdbc.Driver";
public static String DB_URL = "jdbc:mysql://localhost/jr";
public static String DB_NAME = "jr";
public static String DB_USERNAME = "pippi";
public static String DB_PASSWORD = "pluto";
public static void main(String[] args) throws Exception
{
System.out.println("Arriva");
//caricamento file JRXML
JasperDesign jasperDesign = JRXmlLoader.load(JASPER_REPORT_FOLDER + JASPER_FILENAME + ".jrxml");
//compilazione del file e generazione del file JASPER
JasperCompileManager.compileReportToFile(jasperDes ign, JASPER_REPORT_FOLDER + JASPER_FILENAME + ".jasper");
//inizializzazione connessione al database
//Class.forName(DRIVER);
Connection conn = DriverManager.getConnection(DB_URL, DB_USERNAME, DB_PASSWORD);
//rendering e generazione del file PDF
JasperPrint jp = JasperFillManager.fillReport(JASPER_REPORT_FOLDER + JASPER_FILENAME + ".jasper", null, conn);
JasperExportManager.exportReportToPdfFile(jp, JASPER_REPORT_FOLDER + "report.pdf");
}
};
Compilandolo tutto ok, però a run-time mi ritorna il seguente errore:
15-set-2009 18.19.41 org.apache.commons.digester.Digester error
GRAVE: Parse Error at line 4 column 30: cvc-complex-type.3.2.2: Attribute 'splitType' is not allowed to appear in element 'band'.
org.xml.sax.SAXParseException: cvc-complex-type.3.2.2: Attribute 'splitType' is not allowed to appear in element 'band'.
at com.sun.org.apache.xerces.internal.util.ErrorHandl erWrapper.createSAXParseException(ErrorHandlerWrap per.java:236)
at com.sun.org.apache.xerces.internal.util.ErrorHandl erWrapper.error(ErrorHandlerWrapper.java:172)
at com.sun.org.apache.xerces.internal.impl.XMLErrorRe porter.reportError(XMLErrorReporter.java:382)
at com.sun.org.apache.xerces.internal.impl.XMLErrorRe porter.reportError(XMLErrorReporter.java:316)
at com.sun.org.apache.xerces.internal.impl.xs.XMLSche maValidator$XSIErrorReporter.reportError(XMLSchema Validator.java:429)
[.....]
Pare sia dovuto alla classe Digester, peraltro già compilata.
Qualche suggerimento ?