Autor
|
Tema: Reportes en pdf con guardado automático (Leído 7,788 veces)
|
marc85
Desconectado
Mensajes: 41
|
Hola, tengo un gran problema, no puedo hacer que un reporte hecho en ireport se me guarde en PDF en una carpeta especifíca automáticamente (sin que el usuario tenga la necesidad de indicar donde guardar el reporte). Este es el código que uso, gracias de antemano:
String urlreporte = "src/RptDxImagen.jasper"; String destino = "C:\\Reportes\\"+idserv+".pdf";
try { Map parametros = new HashMap(); parametros.put("idserv", codserv); JasperPrint reporte = JasperFillManager.fillReport(urlreporte, parametros, con); JasperExportManager.exportReportToPdfFile( reporte, destino); } catch(Exception e) { System.err.println( "Error iReport: " + e.getMessage() );
|
|
|
En línea
|
|
|
|
Usuario Invitado
Desconectado
Mensajes: 625
|
Hola, 1) Si vas a publicar código, colócalo entre etiquetas [ code=java][ /code] (sin los espacios). Intenta: JRExporter exporter = new JRPdfExporter(); exporter.setParameter(JRExporterParameter.JASPER_PRINT, reporte); exporter.setParameter(JRExporterParameter.OUTPUT_FILE_NAME, destino); exporter.exportReport();
|
|
|
En línea
|
"La vida es muy peligrosa. No por las personas que hacen el mal, si no por las que se sientan a ver lo que pasa." Albert Einstein
|
|
|
marc85
Desconectado
Mensajes: 41
|
estas son las librería que importé: import java.io.File; import java.sql.*; import java.text.SimpleDateFormat; import java.util.HashMap; import java.util.Map; import javax.swing.JOptionPane; import net.sf.jasperreports.engine.JRException; import net.sf.jasperreports.engine.JRExporter; 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.JasperReport; import net.sf.jasperreports.engine.export.JRPdfExporter; import net.sf.jasperreports.engine.util.JRLoader; import net.sf.jasperreports.view.JasperViewer; [ /code] y así dejé el código con lo que me indicastes [ code=java] String urlreporte = "src/RptDxImagen.jasper"; String destino = "C:\\Reportes\\"+idserv +".pdf"; try { parametros.put("idserv", codserv); JasperReport jasperReport=(JasperReport)JRLoader.loadObject(urlreporte); JasperPrint reporte = JasperFillManager.fillReport(urlreporte, parametros, con); JRExporter exporter = new JRPdfExporter(); exporter.setParameter(JRExporterParameter.JASPER_PRINT, reporte); exporter.setParameter(JRExporterParameter.OUTPUT_FILE_NAME, destino); exporter.exportReport(); } { System. err. println( "Error iReport: " + e. getMessage() ); } [ /code] y me mandó un error en tiempo de ejecución en la línea: JRExporter exporter = new JRPdfExporter(); Espero me puedas ayudar te lo agradecería mucho
|
|
« Última modificación: 6 Abril 2015, 21:15 pm por marc85 »
|
En línea
|
|
|
|
Usuario Invitado
Desconectado
Mensajes: 625
|
Y me mandó un error en la línea... ¿Qué error?
|
|
|
En línea
|
"La vida es muy peligrosa. No por las personas que hacen el mal, si no por las que se sientan a ver lo que pasa." Albert Einstein
|
|
|
marc85
Desconectado
Mensajes: 41
|
por cierto este es el error que me genera:
Exception in thread "AWT-EventQueue-0" java.lang.NoClassDefFoundError: com/lowagie/text/DocumentException at Principal_Reportes.btnImagenActionPerformed(Principal_Reportes.java:297) at Principal_Reportes.btnImagenActionPerformed(Principal_Reportes.java:297) at Principal_Reportes.access$000(Principal_Reportes.java:20) at Principal_Reportes$1.actionPerformed(Principal_Reportes.java:133) at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2018) at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2341) at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402) at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259) at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:252) at java.awt.Component.processMouseEvent(Component.java:6516) at javax.swing.JComponent.processMouseEvent(JComponent.java:3321) at java.awt.Component.processEvent(Component.java:6281) at java.awt.Container.processEvent(Container.java:2229) at java.awt.Component.dispatchEventImpl(Component.java:4872) at java.awt.Container.dispatchEventImpl(Container.java:2287) at java.awt.Component.dispatchEvent(Component.java:4698) at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4832) at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4492) at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4422) at java.awt.Container.dispatchEventImpl(Container.java:2273) at java.awt.Window.dispatchEventImpl(Window.java:2719) at java.awt.Component.dispatchEvent(Component.java:4698) at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:740) at java.awt.EventQueue.access$300(EventQueue.java:103) at java.awt.EventQueue$3.run(EventQueue.java:699) at java.awt.EventQueue$3.run(EventQueue.java:697) at java.security.AccessController.doPrivileged(Native Method) at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76) at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:87) at java.awt.EventQueue$4.run(EventQueue.java:713) at java.awt.EventQueue$4.run(EventQueue.java:711) at java.security.AccessController.doPrivileged(Native Method) at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76) at java.awt.EventQueue.dispatchEvent(EventQueue.java:710) at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:242) at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:161) at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:150) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:146) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:138) at java.awt.EventDispatchThread.run(EventDispatchThread.java:91) Caused by: java.lang.ClassNotFoundException: com.lowagie.text.DocumentException at java.net.URLClassLoader$1.run(URLClassLoader.java:366) at java.net.URLClassLoader$1.run(URLClassLoader.java:355) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:354) at java.lang.ClassLoader.loadClass(ClassLoader.java:425) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308) at java.lang.ClassLoader.loadClass(ClassLoader.java:358) ... 39 more
|
|
|
En línea
|
|
|
|
Usuario Invitado
Desconectado
Mensajes: 625
|
Te falta la librería itextpdf. Agrégala a tu class path, recompila y ejecuta.
|
|
|
En línea
|
"La vida es muy peligrosa. No por las personas que hacen el mal, si no por las que se sientan a ver lo que pasa." Albert Einstein
|
|
|
marc85
Desconectado
Mensajes: 41
|
import java.io.File; import java.sql.*; import java.text.SimpleDateFormat; import java.util.HashMap; import java.util.Map; import javax.swing.JOptionPane; import net.sf.jasperreports.engine.JRException; import net.sf.jasperreports.engine.JRExporter; 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.JasperReport; import net.sf.jasperreports.engine.export.JRPdfExporter; import net.sf.jasperreports.engine.util.JRLoader; import net.sf.jasperreports.view.JasperViewer; import com.itextpdf.text.BaseColor; import com.itextpdf.text.Document; import com.itextpdf.text.DocumentException; import com.itextpdf.text.PageSize; import com.itextpdf.text.Paragraph; import com.itextpdf.text.Rectangle; import com.itextpdf.text.pdf.PdfWriter;
estas son todas las librerías que acabo de agregar y me manda el mismo error, disculpa tantas molestias pero me urge
|
|
|
En línea
|
|
|
|
marc85
Desconectado
Mensajes: 41
|
Logré que me creara el archivo pdf con estas librerias:
import java.io.File; import java.sql.*; import java.text.SimpleDateFormat; import java.util.HashMap; import java.util.Map; import javax.swing.JOptionPane; import net.sf.jasperreports.engine.JRException; import net.sf.jasperreports.engine.JRExporter; 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.JasperReport; import net.sf.jasperreports.engine.export.JRPdfExporter; import net.sf.jasperreports.engine.util.JRLoader; import net.sf.jasperreports.view.JasperViewer; import com.itextpdf.awt.*; import com.itextpdf.text.*;
pero no me mostró el contenido del reporte, me mandó este error:
Exception in thread "AWT-EventQueue-0" java.lang.NoSuchFieldError: PRINTSCALING at net.sf.jasperreports.engine.export.JRPdfExporter.exportReportToStream(JRPdfExporter.java:532) at net.sf.jasperreports.engine.export.JRPdfExporter.exportReportToStream(JRPdfExporter.java:532) at net.sf.jasperreports.engine.export.JRPdfExporter.exportReport(JRPdfExporter.java:417) at Principal_Reportes.btnImagenActionPerformed(Principal_Reportes.java:308) at Principal_Reportes.access$000(Principal_Reportes.java:29) at Principal_Reportes$1.actionPerformed(Principal_Reportes.java:142) at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2018) at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2341) at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402) at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259) at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:252) at java.awt.Component.processMouseEvent(Component.java:6516) at javax.swing.JComponent.processMouseEvent(JComponent.java:3321) at java.awt.Component.processEvent(Component.java:6281) at java.awt.Container.processEvent(Container.java:2229) at java.awt.Component.dispatchEventImpl(Component.java:4872) at java.awt.Container.dispatchEventImpl(Container.java:2287) at java.awt.Component.dispatchEvent(Component.java:4698) at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4832) at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4492) at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4422) at java.awt.Container.dispatchEventImpl(Container.java:2273) at java.awt.Window.dispatchEventImpl(Window.java:2719) at java.awt.Component.dispatchEvent(Component.java:4698) at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:740) at java.awt.EventQueue.access$300(EventQueue.java:103) at java.awt.EventQueue$3.run(EventQueue.java:699) at java.awt.EventQueue$3.run(EventQueue.java:697) at java.security.AccessController.doPrivileged(Native Method) at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76) at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:87) at java.awt.EventQueue$4.run(EventQueue.java:713) at java.awt.EventQueue$4.run(EventQueue.java:711) at java.security.AccessController.doPrivileged(Native Method) at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76) at java.awt.EventQueue.dispatchEvent(EventQueue.java:710) at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:242) at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:161) at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:150) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:146) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:138) at java.awt.EventDispatchThread.run(EventDispatchThread.java:91) BUILD STOPPED (total time: 4 minutes 24 seconds)
|
|
|
En línea
|
|
|
|
Usuario Invitado
Desconectado
Mensajes: 625
|
¿Qué versión de iText estás usando? Prueba con la 2.1.7, porque parece que Jasper es compatible solo con ésta versión.
|
|
|
En línea
|
"La vida es muy peligrosa. No por las personas que hacen el mal, si no por las que se sientan a ver lo que pasa." Albert Einstein
|
|
|
marc85
Desconectado
Mensajes: 41
|
Intentaré cambiar la versión del itext, aunque estoy usando netbeans 7.4 e iReport 4.7.1, espero no tener problemas
|
|
|
En línea
|
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
Problema al Abrir el archivo guardado
.NET (C#, VB.NET, ASP)
|
Grugbel
|
3
|
6,279
|
30 Junio 2009, 00:39 am
por h0oke
|
|
|
edit1 y guardado en archivo
Programación C/C++
|
rulovive
|
0
|
1,483
|
13 Agosto 2011, 04:00 am
por rulovive
|
|
|
Guardado de los archivos UDD en Olly
Ingeniería Inversa
|
Tinkipinki
|
2
|
2,834
|
9 Noviembre 2011, 07:05 am
por Tinkipinki
|
|
|
Ayuda guardado de archivo
« 1 2 »
Programación C/C++
|
novatus84
|
11
|
4,859
|
27 Noviembre 2014, 18:22 pm
por novatus84
|
|
|
OllyDBG problemas de guardado
Ingeniería Inversa
|
poncelito
|
2
|
2,117
|
9 Mayo 2015, 22:38 pm
por poncelito
|
|