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

Beginner please help


pippo33

Recommended Posts

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

Link to comment
Share on other sites

  • Replies 5
  • Created
  • Last Reply

Top Posters In This Topic

Popular Days

Top Posters In This Topic

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();			} 							}
Link to comment
Share on other sites

And what's wrong with the nice demos shipped with the full JasperReport Project download??????

 

There are lot's of samples how to create reports from standalone java apps without iReport- usefull for beginners or even experienced users for changed/new features.

 

hth

C-Box

Link to comment
Share on other sites

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)
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...