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

pippo33

Members
  • Posts

    5
  • Joined

  • Last visited

pippo33'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. I wrote an other post but anybody help me , i want to use this software in my project , but after a week of debug i don' t was able to include it in my server. I use an java 5 and oracle OC4J. Every time that i try to use an yor example i have different kind of error Ilike saxparser error , for the code below it work fine in eclipse any problem but if i call it in OC4J by a servlet i have No query executer factory registered error. Debuggin the code souce i seen that not built this object factoryClassName net.sf.jasperreports.engine.query.JRJdbcQueryExecuterFactory but i don't understad why. I cant do more without help and i are behind the times of my project. Sorry if i write two post for the same thing and for my bad english. Thanks in advace for your help. Pippo33. Code:package report;import java.awt.Image;import java.awt.MediaTracker;import java.awt.Panel;import java.awt.Toolkit;import java.io.File;import java.sql.Connection;import java.sql.DriverManager;import java.sql.SQLException;import java.util.HashMap;import java.util.Map;import net.sf.jasperreports.engine.JRException;import net.sf.jasperreports.engine.JRExporterParameter;import net.sf.jasperreports.engine.JasperExportManager;import net.sf.jasperreports.engine.JasperFillManager;import net.sf.jasperreports.engine.JasperPrint;import net.sf.jasperreports.engine.JasperPrintManager;import net.sf.jasperreports.engine.JasperRunManager;import net.sf.jasperreports.engine.export.JExcelApiExporter;import net.sf.jasperreports.engine.export.JRCsvExporter;import net.sf.jasperreports.engine.export.JRRtfExporter;import net.sf.jasperreports.engine.export.JRXlsExporter;import net.sf.jasperreports.engine.export.JRXlsExporterParameter;import net.sf.jasperreports.engine.export.oasis.JROdtExporter;import net.sf.jasperreports.engine.fill.JRBaseFiller;import net.sf.jasperreports.engine.util.JRLoader;public class TestReport { /** * @param args */ private static Connection getConnection() throws ClassNotFoundException, SQLException { return conn; } public void Start() { try{ String[] Action ={ "fill" ,"report\\xxx.jasper"}; String dir = "C:\\workspace\\Service\\WebContent\\"; String taskName = Action[0]; String fileName = dir+Action[1]; Image image = Toolkit.getDefaultToolkit().createImage( JRLoader.loadBytesFromLocation(dir+"\\img\\logo.gif") ); MediaTracker traker = new MediaTracker(new Panel()); traker.addImage(image, 0); try { traker.waitForID(0); } catch (Exception e) { e.printStackTrace(); } Map parameters = new HashMap(); parameters.put("ReportTitle", "The First Jasper Report Ever"); parameters.put("MaxOrderID", 11500); parameters.put("SummaryImage", image); System.out.println("-------------- "+ parameters.get("ReportTitle").toString()); JasperFillManager.fillReportToFile(fileName, parameters, getConnection()); } catch (JRException e) { e.printStackTrace(); System.out.println("TASK_RUN error "+e); } catch (Exception e) { e.printStackTrace(); } } public static void main(String[] args) { TestReport pippo = new TestReport(); pippo.Start(); }}
  2. I write a simple code to test the launch of my report , i used eclipse to execute my clas as java application. It work well and i get my file, but when i try to use it on a oc4J server and try to call my class by a servlet i have the following message : jasper report+No query executer factory registered for the 'sql' language. I don' t know whats means or what i wrong . I put all library (also the i-report lib ) in lib dir of application and my database is mysql. Please help me. Thanks in advance for your help. Code:package report;import java.awt.Image;import java.awt.MediaTracker;import java.awt.Panel;import java.awt.Toolkit;import java.io.File;import java.sql.Connection;import java.sql.DriverManager;import java.sql.SQLException;import java.util.HashMap;import java.util.Map;import net.sf.jasperreports.engine.JRException;import net.sf.jasperreports.engine.JRExporterParameter;import net.sf.jasperreports.engine.JasperExportManager;import net.sf.jasperreports.engine.JasperFillManager;import net.sf.jasperreports.engine.JasperPrint;import net.sf.jasperreports.engine.JasperPrintManager;import net.sf.jasperreports.engine.JasperRunManager;import net.sf.jasperreports.engine.export.JExcelApiExporter;import net.sf.jasperreports.engine.export.JRCsvExporter;import net.sf.jasperreports.engine.export.JRRtfExporter;import net.sf.jasperreports.engine.export.JRXlsExporter;import net.sf.jasperreports.engine.export.JRXlsExporterParameter;import net.sf.jasperreports.engine.export.oasis.JROdtExporter;import net.sf.jasperreports.engine.fill.JRBaseFiller;import net.sf.jasperreports.engine.util.JRLoader;public class TestReport { /** * @param args */ private static Connection getConnection() throws ClassNotFoundException, SQLException { return conn; } public void Start() { try{ String[] Action ={ "fill" ,"report\\xxx.jasper"}; String dir = "C:\\workspace\\Service\\WebContent\\"; String taskName = Action[0]; String fileName = dir+Action[1]; Image image = Toolkit.getDefaultToolkit().createImage( JRLoader.loadBytesFromLocation(dir+"\\img\\logo.gif") ); MediaTracker traker = new MediaTracker(new Panel()); traker.addImage(image, 0); try { traker.waitForID(0); } catch (Exception e) { e.printStackTrace(); } Map parameters = new HashMap(); parameters.put("ReportTitle", "The First Jasper Report Ever"); parameters.put("MaxOrderID", 11500); parameters.put("SummaryImage", image); System.out.println("-------------- "+ parameters.get("ReportTitle").toString()); JasperFillManager.fillReportToFile(fileName, parameters, getConnection()); } catch (JRException e) { e.printStackTrace(); System.out.println("TASK_RUN error "+e); } catch (Exception e) { e.printStackTrace(); } } public static void main(String[] args) { TestReport pippo = new TestReport(); pippo.Start(); }}
  3. Thanks, yes i do this. I used that code below( JasperApp ) , but i have an error that not understand . It work on ireport but not standalone. can help me? Thank in advance. Code:package report;/* * ============================================================================ * GNU Lesser General Public License * ============================================================================ * * JasperReports - Free Java report-generating library. * Copyright (C) 2001-2009 JasperSoft Corporation http://www.jaspersoft.com * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA. * * JasperSoft Corporation * 539 Bryant Street, Suite 100 * San Francisco, CA 94107 * http://www.jaspersoft.com */import java.awt.Image;import java.awt.MediaTracker;import java.awt.Panel;import java.awt.Toolkit;import java.io.File;import java.sql.Connection;import java.sql.DriverManager;import java.sql.SQLException;import java.util.HashMap;import java.util.Map;import net.sf.jasperreports.engine.JRException;import net.sf.jasperreports.engine.JRExporterParameter;import net.sf.jasperreports.engine.JasperExportManager;import net.sf.jasperreports.engine.JasperFillManager;import net.sf.jasperreports.engine.JasperPrint;import net.sf.jasperreports.engine.JasperPrintManager;import net.sf.jasperreports.engine.JasperRunManager;import net.sf.jasperreports.engine.export.JExcelApiExporter;import net.sf.jasperreports.engine.export.JRCsvExporter;import net.sf.jasperreports.engine.export.JRRtfExporter;import net.sf.jasperreports.engine.export.JRXlsExporter;import net.sf.jasperreports.engine.export.JRXlsExporterParameter;import net.sf.jasperreports.engine.export.oasis.JROdtExporter;import net.sf.jasperreports.engine.util.JRLoader;/** * @author Teodor Danciu (teodord@users.sourceforge.net) * @version $Id: JasperApp.java 2692 2009-03-24 17:17:32Z teodord $ */public class JasperApp{ /** * */ private static final String TASK_FILL = "fill"; private static final String TASK_PRINT = "print"; private static final String TASK_PDF = "pdf"; private static final String TASK_XML = "xml"; private static final String TASK_XML_EMBED = "xmlEmbed"; private static final String TASK_HTML = "html"; private static final String TASK_RTF = "rtf"; private static final String TASK_XLS = "xls"; private static final String TASK_JXL = "jxl"; private static final String TASK_CSV = "csv"; private static final String TASK_ODT = "odt"; private static final String TASK_RUN = "run"; /** * */ public static void main(String[] args) { String[] Action ={ "fill" ,"matricole.jasper"}; if(args.length == 0) { usage(); //return; } String dir = "C:\\jasper\\"; String taskName = Action[0]; String fileName = dir+Action[1]; try { long start = System.currentTimeMillis(); if (TASK_FILL.equals(taskName)) { //Preparing parameters Image image = Toolkit.getDefaultToolkit().createImage( JRLoader.loadBytesFromLocation(dir+"dukesign.jpg") ); MediaTracker traker = new MediaTracker(new Panel()); traker.addImage(image, 0); try { traker.waitForID(0); } catch (Exception e) { e.printStackTrace(); } Map parameters = new HashMap(); parameters.put("ReportTitle", "The First Jasper Report Ever"); parameters.put("MaxOrderID", 11500); parameters.put("SummaryImage", image); System.out.println("-------------- "+ parameters.get("ReportTitle").toString()); JasperFillManager.fillReportToFile(fileName, parameters, getConnection()); System.err.println("Filling time : " + (System.currentTimeMillis() - start)); } else if (TASK_PRINT.equals(taskName)) { JasperPrintManager.printReport(fileName, true); System.err.println("Printing time : " + (System.currentTimeMillis() - start)); } else if (TASK_PDF.equals(taskName)) { JasperExportManager.exportReportToPdfFile(fileName); System.err.println("PDF creation time : " + (System.currentTimeMillis() - start)); } else if (TASK_XML.equals(taskName)) { JasperExportManager.exportReportToXmlFile(fileName, false); System.err.println("XML creation time : " + (System.currentTimeMillis() - start)); } else if (TASK_XML_EMBED.equals(taskName)) { JasperExportManager.exportReportToXmlFile(fileName, true); System.err.println("XML creation time : " + (System.currentTimeMillis() - start)); } else if (TASK_HTML.equals(taskName)) { JasperExportManager.exportReportToHtmlFile(fileName); System.err.println("HTML creation time : " + (System.currentTimeMillis() - start)); } else if (TASK_RTF.equals(taskName)) { File sourceFile = new File(fileName); JasperPrint jasperPrint = (JasperPrint)JRLoader.loadObject(sourceFile); File destFile = new File(sourceFile.getParent(), jasperPrint.getName() + ".rtf"); JRRtfExporter exporter = new JRRtfExporter(); exporter.setParameter(JRExporterParameter.JASPER_PRINT, jasperPrint); exporter.setParameter(JRExporterParameter.OUTPUT_FILE_NAME, destFile.toString()); exporter.exportReport(); System.err.println("RTF creation time : " + (System.currentTimeMillis() - start)); } else if (TASK_XLS.equals(taskName)) { File sourceFile = new File(fileName); Map dateFormats = new HashMap(); dateFormats.put("EEE, MMM d, yyyy", "ddd, mmm d, yyyy"); JasperPrint jasperPrint = (JasperPrint)JRLoader.loadObject(sourceFile); File destFile = new File(sourceFile.getParent(), jasperPrint.getName() + ".xls"); JRXlsExporter exporter = new JRXlsExporter(); exporter.setParameter(JRExporterParameter.JASPER_PRINT, jasperPrint); exporter.setParameter(JRExporterParameter.OUTPUT_FILE_NAME, destFile.toString()); exporter.setParameter(JRXlsExporterParameter.IS_ONE_PAGE_PER_SHEET, Boolean.TRUE); exporter.setParameter(JRXlsExporterParameter.IS_DETECT_CELL_TYPE, Boolean.TRUE); exporter.setParameter(JRXlsExporterParameter.FORMAT_PATTERNS_MAP, dateFormats); exporter.exportReport(); System.err.println("XLS creation time : " + (System.currentTimeMillis() - start)); } else if (TASK_JXL.equals(taskName)) { File sourceFile = new File(fileName); JasperPrint jasperPrint = (JasperPrint)JRLoader.loadObject(sourceFile); File destFile = new File(sourceFile.getParent(), jasperPrint.getName() + ".jxl.xls"); JExcelApiExporter exporter = new JExcelApiExporter(); exporter.setParameter(JRExporterParameter.JASPER_PRINT, jasperPrint); exporter.setParameter(JRExporterParameter.OUTPUT_FILE_NAME, destFile.toString()); exporter.setParameter(JRXlsExporterParameter.IS_ONE_PAGE_PER_SHEET, Boolean.TRUE); exporter.exportReport(); System.err.println("XLS creation time : " + (System.currentTimeMillis() - start)); } else if (TASK_CSV.equals(taskName)) { File sourceFile = new File(fileName); JasperPrint jasperPrint = (JasperPrint)JRLoader.loadObject(sourceFile); File destFile = new File(sourceFile.getParent(), jasperPrint.getName() + ".csv"); JRCsvExporter exporter = new JRCsvExporter(); exporter.setParameter(JRExporterParameter.JASPER_PRINT, jasperPrint); exporter.setParameter(JRExporterParameter.OUTPUT_FILE_NAME, destFile.toString()); exporter.exportReport(); System.err.println("CSV creation time : " + (System.currentTimeMillis() - start)); } else if (TASK_ODT.equals(taskName)) { File sourceFile = new File(fileName); JasperPrint jasperPrint = (JasperPrint)JRLoader.loadObject(sourceFile); File destFile = new File(sourceFile.getParent(), jasperPrint.getName() + ".odt"); JROdtExporter exporter = new JROdtExporter(); exporter.setParameter(JRExporterParameter.JASPER_PRINT, jasperPrint); exporter.setParameter(JRExporterParameter.OUTPUT_FILE_NAME, destFile.toString()); exporter.exportReport(); System.err.println("ODT creation time : " + (System.currentTimeMillis() - start)); } else if (TASK_RUN.equals(taskName)) { //Preparing parameters Image image = Toolkit.getDefaultToolkit().createImage("dukesign.jpg"); MediaTracker traker = new MediaTracker(new Panel()); traker.addImage(image, 0); try { traker.waitForID(0); } catch (Exception e) { e.printStackTrace(); } Map parameters = new HashMap(); parameters.put("ReportTitle", "The First Jasper Report Ever"); parameters.put("MaxOrderID", new Integer(10500)); parameters.put("SummaryImage", image); JasperRunManager.runReportToPdfFile(fileName, parameters, getConnection()); System.err.println("PDF running time : " + (System.currentTimeMillis() - start)); } else { usage(); } } catch (JRException e) { e.printStackTrace(); } catch (Exception e) { e.printStackTrace(); } } /** * */ private static void usage() { System.out.println( "JasperApp usage:" ); System.out.println( "\tjava JasperApp task file" ); System.out.println( "\tTasks : fill | print | pdf | xml | xmlEmbed | html | rtf | xls | jxl | csv | odt | run" ); } /** * */ private static Connection getConnection() throws ClassNotFoundException, SQLException { provaReport pippo=new provaReport(); String result="";Connection conn=null; Class.forName("com.mysql.jdbc.Driver"); conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/sugarcrm?user=root&password=terminator" ); return conn; }}the error is :java.lang.NullPointerException at net.sf.jasperreports.engine.JRPropertiesMap.readObject(JRPropertiesMap.java:176) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at java.io.ObjectStreamClass.invokeReadObject(Unknown Source) at java.io.ObjectInputStream.readSerialData(Unknown Source) at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source) at java.io.ObjectInputStream.readObject0(Unknown Source) at java.io.ObjectInputStream.defaultReadFields(Unknown Source) at java.io.ObjectInputStream.readSerialData(Unknown Source) at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source) at java.io.ObjectInputStream.readObject0(Unknown Source) at java.io.ObjectInputStream.readArray(Unknown Source) at java.io.ObjectInputStream.readObject0(Unknown Source) at java.io.ObjectInputStream.defaultReadFields(Unknown Source) at java.io.ObjectInputStream.readSerialData(Unknown Source) at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source) at java.io.ObjectInputStream.readObject0(Unknown Source) at java.io.ObjectInputStream.defaultReadFields(Unknown Source) at java.io.ObjectInputStream.readSerialData(Unknown Source) at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source) at java.io.ObjectInputStream.readObject0(Unknown Source) at java.io.ObjectInputStream.readObject(Unknown Source) at net.sf.jasperreports.engine.util.JRLoader.loadObject(JRLoader.java:88) at net.sf.jasperreports.engine.JasperFillManager.fillReportToFile(JasperFillManager.java:89) at report.JasperApp.main(JasperApp.java:134)
  4. Belive me i tried a lot on internet site , but i find only old example that use old library, then i not was able to compile and execute. I know that my request seems stupid but for a beginner its not simple to understand what is wrong or how to substitute the old method I also downolad the soruce project and the example code , but when i import method from jar( 3.5.1) i don' find a lot of class For this i need a simple and clear example to start . Thanks . Code:import java.io.IOException;import javax.servlet.ServletConfig;import javax.servlet.ServletException;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import net.sf.jasperreports.engine.*;import java.sql.Connection;import java.sql.DriverManager;import java.util.Collection;import java.util.HashMap;import java.util.Map;import net.sf.jasperreports.engine.JRException;import net.sf.jasperreports.engine.*;import net.sf.jasperreports.engine.export.*;import net.sf.jasperreports.engine.util.*;import net.sf.jasperreports.view.*;import net.sf.jasperreports.engine.fill.*;import net.sf.jasperreports.engine.print.*;import net.sf.jasperreports.engine.export.JRExporterContext;import net.sf.jasperreports.engine.*;public class StartReport extends HttpServlet { private static final long serialVersionUID = 1L; public StartReport() { super(); // TODO Auto-generated constructor stub } public void init(ServletConfig config) throws ServletException { // TODO Auto-generated method stub } protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // TODO Auto-generated method stub } /** * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response) */ @SuppressWarnings("deprecation") protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { try { Class.forName("com.mysql.jdbc.Driver"); //conn=DriverManager.getConnection ("jdbc:oracle:thin:@193.70.215.86:1521:mputdb","rdamgr","terminator"); Connection conn = DriverManager.getConnection("jdbc:mysql://10.63.120.79:3306/crisago?" + "user=root&password=firefox" ); java.sql.Statement st=conn.createStatement(); conn.close(); }catch(Exception e){System.out.println("Bean try connessione main "+ e.toString());} try{ //File jasper sorgente String fileName="D:\\templates\\report1.jasper"; //File pdf di destinazione String destFileNamePdf="D:\\templates\\report1.pdf"; //File xls di destinazione String destFileNameXls="D:\\templates\\report1.xls"; //Passaggio parametri da passare al jasper. Map parameters = new HashMap(); parameters.put("param1", new Integer(1)); //Preparazione del file da stampare (in questa fase si esegue la query e si inseriscono //i valori estratti dalla query) JasperPrint jasperPrint=JasperPrintManager.fillReport(fileName, parameters, conn ); //Creazione del PDF JasperPrintManager.printReportToPdfFile(jasperPrint, destFileNamePdf); //Creazione dell'xls JRExporter exporter ; exporter.setParameter(JRExporterParameter.JASPER_PRINT, jasperPrint); exporter.setParameter(JRExporterParameter.OUTPUT_FILE_NAME, destFileNameXls); exporter.exportReport(); System.exit(0); }catch (Exception e){ e.printStackTrace(); } }
  5. Sorry but my english is so so I download jasper report 3.5.1 jar,source and iReport-nb-3.5.1 windows-installer, after installation i launched ireport and i do a simple file report2.jrxml. Now i want to use a java class for do a query , to fill report2.jrxml and create a pdf file on my server I read a lot of exemple and i try to execute the code but every time, dasn't work . I belived that the code was too old for this release. Some one can help me with a simple example that work with this release ? I wont to start to use this project bur i need a little help. Thank in advance for your help
×
×
  • Create New...