Jump to content
We've recently updated our Privacy Statement, available here ×

Peanut

Members
  • Posts

    9
  • Joined

  • Last visited

Peanut's Achievements

Rookie

Rookie (2/14)

  • First Post Rare
  • Conversation Starter Rare
  • Week One Done
  • One Month Later
  • One Year In

Recent Badges

0

Reputation

  1. Thanks ! net.sf.jasperreports.engine.util.JRProperties.setProperty(net.sf.jasperreports.engine.util.JRProperties.COMPILER_TEMP_DIR, sNomRepTrav)
  2. Hello, when you execute JasperCompileManager.compileReportToFile(jasperDesign, sNomFicJasperAbs); Jasper generates a temporary file xyz.java in its own directory. Is it possible to specify the place for this xyz.java file to be generated ? (I don't have the permission to write in the bin directory) Post edited by: Peanut, at: 2006/11/02 09:30
  3. OK, so the verifyDesign has nothing to do with XML checking. Thanks. So, as you said, I'm trying to catch exceptions on JRXmlLoader.load : Code:JasperDesign jasperDesign = new JasperDesign(); try { jasperDesign = JRXmlLoader.load(sNomFicJrxml); } catch (JRException e) { System.out.println( "[ERREUR] Problème lors du chargement du modèle JRXML : " + e.getMessage()); }That works but I'd like not all that exception buffer to be printed on the screen, but only my println (ie only the last line of this capture) : is it possible ? 5 oct. 2006 14:27:54 org.apache.commons.digester.Digester error SEVERE: Parse Error at line 19 column 29: L'élément racine du document "jasperReportKO" doit correspondre à la racine DOCTYPE "jasperReport". org.xml.sax.SAXParseException: L'élément racine du document "jasperReportKO" doit correspondre à la racine DOCTYPE "jasperReport". at org.apache.xerces.util.ErrorHandlerWrapper.createSAXParseException(Unknown Source) at org.apache.xerces.util.ErrorHandlerWrapper.error(Unknown Source) at org.apache.xerces.impl.XMLErrorReporter.reportError(Unknown Source) at org.apache.xerces.impl.XMLErrorReporter.reportError(Unknown Source) at org.apache.xerces.impl.dtd.XMLDTDValidator.rootElementSpecified(Unknown Source) at org.apache.xerces.impl.dtd.XMLDTDValidator.handleStartElement(Unknown Source) at org.apache.xerces.impl.dtd.XMLDTDValidator.startElement(Unknown Source) at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanStartElement(Unknown Source) at org.apache.xerces.impl.XMLDocumentScannerImpl$ContentDispatcher.scanRootElementHook(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 org.apache.commons.digester.Digester.parse(Digester.java:1647) at net.sf.jasperreports.engine.xml.JRXmlLoader.loadXML(JRXmlLoader.java:238) at net.sf.jasperreports.engine.xml.JRXmlLoader.loadXML(JRXmlLoader.java:225) at net.sf.jasperreports.engine.xml.JRXmlLoader.load(JRXmlLoader.java:213) at net.sf.jasperreports.engine.xml.JRXmlLoader.load(JRXmlLoader.java:167) at net.sf.jasperreports.engine.xml.JRXmlLoader.load(JRXmlLoader.java:151) at jasper_compile_modele.main(jasper_compile_modele.java:133) [ERREUR] Problème lors du chargement du modèle JRXML : L'élément racine du document "jasperReportKO" doit correspondre à la racine DOCTYPE "jasperReport". I admit it's more a question about Java than about Jasper. :blush:
  4. Hello, I've discovered the function JasperCompileManager.verifyDesign, and I wanted to use it in order to avoid my program crashing if the JRXML is not correct. But this function needs a JasperDesign for parameter: this means that you've already called one of the JRXmlLoader.load before... and your program would have certainly crashed in this function ! Indeed, I've tried to put different mistakes in my JRXML file, and each times my program crashes in JRXmlLoader.load, never reaching JasperCompileManager.verifyDesign. What do I miss ? :huh:
  5. Here is a copy of my code working ! (not like so much on the net...) Hope it will help future newbies. :woohoo: Code:// Exemple de génération de rapport JasperReports à partir d'une source CSV // (validé avec jasperreports-1.2.6.jar - LY 09/2006) // // Exemple de fichier CSV utilisé en entrée : // => ne pas oublier le caractère séparateur en fin de ligne ! // // animal;mange;couleur; // sanglier;glands;beige; // vache;herbe;blanche; // chat;souris;gris; // import java.io.*; // import de la classe "HashMap" pour l'envoi de paramètres à un rapport import java.util.HashMap; // import du moteur de la librairie JasperReports import net.sf.jasperreports.engine.*; import net.sf.jasperreports.engine.data.JRCsvDataSource; import net.sf.jasperreports.engine.design.JasperDesign; import net.sf.jasperreports.engine.design.JRDesignField; //import net.sf.jasperreports.engine.export.JRCsvExporter; //import net.sf.jasperreports.engine.export.JRPdfExporter; import net.sf.jasperreports.engine.export.JRRtfExporter; import net.sf.jasperreports.engine.xml.JRXmlLoader; public class generatepdffromcsv { public static void main(String[] args) { HashMap params = new HashMap(); //String[] nomCols = {"animal", "mange", "couleur"}; // <- si on n'utilise pas 'setUseFirstRowAsHeader' ** try { System.out.println("Et c'est parti..."«»); // Passage de paramètres (facultatif) //params.put("", ""«»); // Chargement et compilation du rapport System.out.print("+ chargement et compilation du rapport JRXML"«»); JasperDesign jasperDesign = JRXmlLoader.load("essai11.jrxml"«»); JasperReport jasperReport = JasperCompileManager.compileReport(jasperDesign); System.out.println(" : OK"«»); // Déclaration de la source de données System.out.print("+ déclaration de la source de données CSV"«»); File sourceFile = new File("essai1.csv"«»); JRCsvDataSource source = new JRCsvDataSource(sourceFile); source.setFieldDelimiter(';'); //source.setColumnNames(nomCols); // <- si on n'utilise pas 'setUseFirstRowAsHeader' ** source.setUseFirstRowAsHeader(true); System.out.println(" : OK"«»); // Export du rapport au format temporaire 'jasperPrint' System.out.print("+ export du rapport au format intermédiaire 'jasperPrint'"«»); JasperPrint jasperPrint = JasperFillManager.fillReport(jasperReport, params, source); //équivalent à JasperPrint jasperPrint = JasperFillManager.fillReport("essai1.jasper", params, source); System.out.println(" : OK"«»); // puis export du rapport au format cible JasperExportManager exporter = new JasperExportManager(); System.out.print("+ conversion au format cible PDF"«»); exporter.exportReportToPdfFile(jasperPrint, "essai1.pdf"«»); System.out.println(" : OK"«»); System.out.print("+ conversion au format cible HTML"«»); exporter.exportReportToHtmlFile(jasperPrint, "essai1.html"«»); System.out.println(" : OK"«»); System.out.print("+ conversion au format cible XML"«»); exporter.exportReportToXmlFile(jasperPrint, "essai1.xml", false); System.out.println(" : OK"«»); System.out.print("+ conversion au format cible RTF"«»); JRRtfExporter exporterRtf = new JRRtfExporter(); exporterRtf.setParameter(JRExporterParameter.JASPER_PRINT, jasperPrint); exporterRtf.setParameter(JRExporterParameter.OUTPUT_FILE_NAME, "essai1.rtf"«»); exporterRtf.exportReport(); System.out.println(" : OK"«»); System.out.println("That's all folks !"«»); } catch (Exception e) { System.out.println(e.getMessage()); } } } Code:[code]CLASSPATH="./jasperreports-1.2.6.jar:/opt/oracle/instantclient_10_2/ojdbc14.jar:./xml-apis.jar:./commons-digester-1.7.jar:./commons-collections-2.1.jar:./commons-logging-api-1.0.2.jar:./commons-logging-1.0.2.jar:./commons-beanutils-1.5.jar:./itext-1.3.1.jar:./jcommon-1.0.0.jar:./jdt-compiler-3.1.1.jar:./commons-javaflow-20060411.jar:/usr/java14/lib:/opt/oracle/instantclient_10_2:.:/usr/java14/lib:/usr/java14/jre/lib:./itext-1.4.4.jar"Post edited by: Peanut, at: 2006/09/13 12:27
  6. Ah OK, that's not the way I was trying to use it. :blush: Thank you.
  7. :side: Here is my code : Code:import java.io.*; // import des classes "Map" et "Hastable" pour l'envoi de paramètres à un rapport import java.util.Map; import java.util.Hashtable; import java.util.HashMap; // import du "moteur" de la librairie JasperReports import net.sf.jasperreports.engine.*; import net.sf.jasperreports.engine.export.JRCsvExporter; import net.sf.jasperreports.engine.design.JasperDesign; import net.sf.jasperreports.engine.xml.JRXmlLoader; import net.sf.jasperreports.engine.data.JRCsvDataSource; public class generatepdffromcsv { public static void main(String[] arguments) { String erreur = ""; Map params = new Hashtable(); try { System.out.println("Et c'est parti..."«»); // ????? params.put("animal", "animal"«»); params.put("mange", "mange"«»); params.put("couleur", "couleur"«»); // Chargement et compilation du rapport JasperDesign jasperDesign = JRXmlLoader.load("essai1.jrxml"«»); JasperReport jasperReport = JasperCompileManager.compileReport(jasperDesign); // déclaration de la source de données File sourceFile = new File("essai1.csv"«»); JRCsvDataSource source = new JRCsvDataSource(sourceFile); System.out.println("aaaa"«»); // ???? source.setFieldDelimiter(";"«»); // ???? source.setUseFirstRowAsHeader(TRUE); // export du rapport au format temporaire 'jasperPrint' JasperPrint jasperPrint = JasperFillManager.fillReport(jasperReport,params,source); System.out.println("cccc"«»); // puis export du rapport au format PDF JasperExportManager exporter = new JasperExportManager(); exporter.exportReportToPdfFile(jasperPrint,"essai1.pdf"«»); System.out.println("That's all folks !"«»); } catch (Exception e) { System.out.println(e.getMessage()); } } } My CSV file : Code:[code]animal;mange;couleur; sanglier;glands;beige; vache;herbe;blanche; chat;souris;gris;(I've tried to replace ";" with "," since setFieldDelimiter doesn't compile, but it's the same. And the result : Code:[code]Et c'est parti... aaaa null :(
  8. I've read the docs but they're really not clear, and a lot of things are deprecated. :unsure: I have a CSV file : Code:title1;title2;title3; dataa;datab;datac; datad;datae;dataf; ... and a jrxml file : Code:[code]... <field name="title1" class="java.lang.String"/> <field name="title2" class="java.lang.String"/> <field name="title3" class="java.lang.String"/> ... Is this OK ? : Code:[code]Map params = new Hashtable(); ... params.put("title1","title1"«»); params.put("title2","title2"«»); params.put("title3","title3"«»); ... JasperPrint jasperPrint = JasperFillManager.fillReport(jasperReport,params,source); Thanks.
  9. Hello, I'm a beginner with Jasper and even Java. To much for a day ! :P I'm trying since this morning to make all that stuff working, and I think I'm not so far... One thing I don't understand is the use of the second parameter of JasperFillManager.fillReport(). What kind of data do I have to put here please ?
×
×
  • Create New...