[ jocat @ 28.03.2006. 06:42 ] @
Pretraživao sam na internetu i nisam došao do odgovora kako pozvati izveštaj iz Java programa. Da li postoji negde neki univerzalni kod za tako nešto ? Zahvaljujem se unapred! |
[ jocat @ 28.03.2006. 06:42 ] @
[ arthur @ 07.04.2006. 23:48 ] @
Ako je i dalje problem aktuealan, evo par jednostavnih primera:
http://www.javaworld.com/javaw...jw-0920-opensourceprofile.html http://technology.amis.nl/blog/index.php?p=346 http://ensode.net/jasperreports_intro.html http://www.devx.com/Java/Article/29309/0/page/1 [ gorpe @ 12.12.2012. 11:03 ] @
Evo stavis na komandno dugme
Samo izmjeni u svoju putanju try { String report = "C:\\Users\\XXX\\Documents\\NetBeansProjects\\IMEPROJEKTA\\report1.jrxml"; JasperReport jr = JasperCompileManager.compileReport(report); JasperPrint jp = JasperFillManager.fillReport(jr, null, conn); JasperViewer.viewReport(jp,false); } catch (JRException ex) { Logger.getLogger(Izvjestaj.class.getName()).log(Level.SEVERE, null, ex); } Javi ako upijes ??? ![]() [ zoranix @ 12.12.2012. 12:34 ] @
Naziv izveštaja "report1.jrxml" treba da se nalazi u istom folderu gde je i klasa koja ga poziva.
U svakom drugom slučaju putanju nikada ne navodi ovako: Citat: String report = "C:\\Users\\XXX\\Documents\\NetBeansProjects\\IMEPROJEKTA\\report1.jrxml"; jer će ti ovo raditi samo na M$ Windows-u, a ako tako želiš pređi na C#. Ako koristiš Javu razmišljaj globalno i korisiti Posix sistem putanja, jer će ti to raditi na svemu što ima Javu SE. U tom slučaju uvek koristi relativno adresiranje od mesta (foldera) u kome se nalazi klasa koja se izvršava (takozvani "class root"). Na primer: Citat: "./reports/report1.jrxml" Namesto: Citat: } catch (JRException ex) { Logger.getLogger(Izvjestaj.class.getName()).log(Level.SEVERE, null, ex); } korisiti: }catch (Exception ex) { System.out.println("moja greška = " + ex); } Ovo će ti reći šta ti nedostaje od JAR fajlova koje obavezno moraš dodati u CLASSPATH putanji. To su najverovatnije JAR fajlovi iz JasperReports-a, koji se redistribuiraju da bi ti štampa i izvoz u neke druge formate radili! [ bantu @ 12.12.2012. 12:45 ] @
Ne znam zašto, ali mislim da korisnika koji je postavio ovu temo ovo sigurno više ne zanima. :)
Do sada je već riješio problem, ili je odustao. :) [ gorpe @ 12.12.2012. 18:37 ] @
a ja imam problem dok je na kompu na kojem razvijam aplikaciju sve je ok, ali kad uradim clean and build i probam na drugom kompu nece da mi otvori jreport ....
izbaci da je losa lokacija ?? sta da uradim da rijesim taj problem ??? Evo sta mi izbaci net.sf.jasperreports.JRException:java io.FileNotFoundException:report1.jrxml(The system cannot find the file specified) [ bantu @ 13.12.2012. 07:16 ] @
Pa treba da napravis program tako da ti ne zavisi od putanje.
[ FooLControL @ 13.12.2012. 20:39 ] @
Verovatno korsitis apsolutne putanje umesto relativnih.
[ gorpe @ 11.01.2013. 13:06 ] @
Do mene je bilo , ali evo ako kome zatreba kod
try { String report = "report1.jrxml"; JasperReport jr = JasperCompileManager.compileReport(report); JasperPrint jp = JasperFillManager.fillReport(jr, null, conn); JasperViewer jw = new JasperViewer(jp,false); jw.setVisible(true); } catch (JRException ex) { JOptionPane.showMessageDialog(null, ex); } [ caca @ 18.01.2013. 14:33 ] @
U NetBeans sam dodala plagins za iReport.
Napravila stampu i preko java aplikacije je pozivam. Stampa mi se prikaze na ekranu i ona izgleda kako i ocekujem ali mi u iReport output javi sledece log4j:WARN No appenders could be found for logger (net.sf.jasperreports.extensions.ExtensionsEnvironment). log4j:WARN Please initialize the log4j system properly. Kako da to resim ? Prvi put se srecem sa log4j. Ovo je kod koji poziva stampu. Code: public void stampajRacun( ) { try { // PREPARING DATABASE CONNECTION con = DBveza.getConnection(); // PATH TO YOUR JASPER FILE String fullPath="izv/RacZB.jasper"; // PREPARE THE PARAMETERS Map<String, Object> param=new HashMap<String, Object>(); param.put("brRac",Integer.parseInt(txtId.getText().trim())); // FILL THE REPORT JasperPrint JPrint=JasperFillManager.fillReport(fullPath,param,con); // VIEW THE REPORT JasperViewer.viewReport(JPrint,false); // CLOSE CONNECTION con.close(); } catch(SQLException sqle) { poruka.setText(sqle.getMessage()); } catch(Exception e) { poruka.setText(e.getMessage()); } } Copyright (C) 2001-2025 by www.elitesecurity.org. All rights reserved.
|