Jump to content
Changes to the Jaspersoft community edition download ×

shakuganxxii

Members
  • Posts

    4
  • Joined

  • Last visited

shakuganxxii's Achievements

Rookie

Rookie (2/14)

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

Recent Badges

0

Reputation

  1. Is JasperReports viable for dynamic pdf generation where almost all the contents are stored in html format in a database and requires most likely 100s of queries to put everything together. From my research so far, it seems JasperReports only allows for a single database query for some reason. This is alleviated by subreports, but I'm not entirely sure how subreports work and if it allows for more queries. Thanks
  2. Never mind, it has been solved by replacing conn with JasperPrint jprint = JasperFillManager.fillReport(jasperReport, null, new JREmptyDataSource()); reference: https://community.jaspersoft.com/questions/537650/blank-pdf-even-simplest-jrxml
  3. I am trying to put some text onto the page, but the text fields never show up. <?xml version="1.0" encoding="UTF-8"?><jasperReport xmlns="http://jasperreports.sourceforge.net/jasperreports" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://jasperreports.sourceforge.net/jasperreports http://jasperreports.sourceforge.net/xsd/jasperreport.xsd" name="report1" pageWidth="595" pageHeight="842" columnWidth="555" leftMargin="20" rightMargin="20" topMargin="20" bottomMargin="20" > <property name="ireport.zoom" value="1.2100000000000002"/> <property name="ireport.x" value="0"/> <property name="ireport.y" value="0"/> <background> <band splitType="Stretch"/> </background> <title> <band height="79" splitType="Stretch"> <staticText> <reportElement x="77" y="20" width="205" height="59" /> <textElement> <font size="38"/> </textElement> <text><![CDATA[TESTTT]]></text> </staticText> </band> </title> <pageHeader> <band height="35" splitType="Stretch"/> </pageHeader> <columnHeader> <band height="61" splitType="Stretch"/> </columnHeader> <detail> <band height="125" splitType="Stretch"> <staticText> <reportElement x="77" y="0" width="205" height="59" /> <textElement> <font size="38"/> </textElement> <text><![CDATA[Hello World]]></text> </staticText> </band> </detail> <columnFooter> </columnFooter> <pageFooter> <band height="54" splitType="Stretch"/> </pageFooter> <summary> <band height="42" splitType="Stretch"/> </summary></jasperReport>[/code] import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.IOException;import java.io.InputStream;import java.sql.Connection;import java.sql.DriverManager;import java.sql.SQLException;import java.util.HashMap;import net.sf.jasperreports.engine.JRException;import net.sf.jasperreports.engine.JRExporterParameter;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.JasperReport;import net.sf.jasperreports.engine.design.JasperDesign;import net.sf.jasperreports.engine.export.JRPdfExporter;import net.sf.jasperreports.engine.xml.JRXmlLoader;public class JJasper { private static final String fileName = "FirstJasper"; public static void main(String[] args) { HashMap hm = new HashMap(); hm.put("IS_IGNORE_PAGINATION",Boolean.FALSE); String jrxmlFileName = fileName + ".jrxml"; String jasperFileName = fileName + ".jasper"; String pdfFileName = fileName + ".pdf"; System.out.println("Start ...."); String dbUrl = "url"; String dbDriver = "oracle.jdbc.driver.OracleDriver"; String dbUname = "username"; String dbPwd = "password"; // Get the connection try { Connection conn = DriverManager.getConnection(dbUrl, dbUname, dbPwd); JasperDesign design = JRXmlLoader.load(jrxmlFileName); JasperReport jasperReport = JasperCompileManager.compileReport(jrxmlFileName); JasperPrint jprint = JasperFillManager.fillReport(jasperReport, null, conn); FileOutputStream fos = new FileOutputStream(pdfFileName); JRPdfExporter exporter = new JRPdfExporter(); exporter.setParameter(JRExporterParameter.JASPER_PRINT, jprint); exporter.setParameter(JRExporterParameter.OUTPUT_STREAM, fos); exporter.exportReport(); fos.flush(); fos.close(); System.out.println("Done exporting reports to pdf"); } catch (SQLException e) { e.printStackTrace(); } catch (JRException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } }}[/code]
  4. import java.sql.Connection;import java.sql.DriverManager;import java.util.HashMap;import net.sf.jasperreports.engine.JasperCompileManager;import net.sf.jasperreports.engine.JasperExportManager;import net.sf.jasperreports.engine.JasperFillManager;import net.sf.jasperreports.engine.JasperPrint;public class JJasper { public static void main(String[] args) { String jrxmlFileName = "C1_report.jrxml"; String jasperFileName = "C1_report.jasper"; String pdfFileName = "C1_report.pdf"; String dbUrl = ... database connection ... ; String dbDriver = "oracle.jdbc.driver.OracleDriver"; String dbUname = ... username ... ; // String dbPwd = props.getProperty("db.password"); String dbPwd = ... password ...; System.out.println("Start ...."); try { JasperCompileManager.compileReportToFile(jrxmlFileName, jasperFileName); Class.forName(dbDriver); Connection conn = DriverManager.getConnection(dbUrl, dbUname, dbPwd); HashMap<String, Object> hm = new HashMap<String, Object>(); hm.put("ID", "123"); hm.put("DATENAME", "April 2006"); JasperPrint jprint = (JasperPrint) JasperFillManager.fillReport(jasperFileName, hm, conn); JasperExportManager.exportReportToPdfFile(jprint, pdfFileName); System.out.println("Done exporting reports to pdf"); } catch (Exception e) { System.out.print("Exception:" + e); } }}[/code]Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/digester/Digester at net.sf.jasperreports.engine.JasperCompileManager.compileToFile(JasperCompileManager.java:253) at net.sf.jasperreports.engine.JasperCompileManager.compileReportToFile(JasperCompileManager.java:554) at JJasper.main(JJasper.java:31)Caused by: java.lang.ClassNotFoundException: org.apache.commons.digester.Digester at java.net.URLClassLoader.findClass(URLClassLoader.java:381) at java.lang.ClassLoader.loadClass(ClassLoader.java:424) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:349) at java.lang.ClassLoader.loadClass(ClassLoader.java:357)[/code]I am using Eclipse Luna and I have digester in my Java Build Path: lib commons-beanutils-1.9.3.jar commons-beanutils-1.9.3-javadoc.jar commons-beanutils-1.9.3-sources.jar commons-beanutils-1.9.3-tests.jar commons-beanutils-1.9.3-test-sources.jar commons-collections4-4.1.jar commons-collections4-4.1-javadoc.jar commons-digester3-3.2.jar commons-digester3-3.2-javadoc.jar commons-digester3-3.2-sources.jar commons-digester3-3.2-with-deps.jar commons-logging-1.2.jar commons-logging-1.2-javadoc.jar jasperreports.jar jasperreports-fonts.jar jasperreports-functions.jar jasperreports-javaflow.jar[/code]all of which are in Java Build Path->Libraries Windows 10, Java-1.8 How do I fix this error? Thanks
×
×
  • Create New...