naster Posted July 17, 2015 Share Posted July 17, 2015 Hello. I have to continue the development of a web app. I've deployed it on Glassfish 4.1 and it works on localhost. I use NetBeans to deploy it on localhost. But when I deploy it on the server, the generation of the PDF doesn't work. I have Glassfish 4.1, MySQL in the server and in localhost, java 7 in the server and java 8 in localhost.Glassfish tells me this:StandardWrapperValve[FacesServlet]: Servlet.service() for servlet Faces Servlet threw exceptionorg.hibernate.TransactionException: nested transactions not supportedatorg.hibernate.engine.transaction.spi.AbstractTransactionImpl.begin(AbstractTransactionImpl.java:154)atorg.hibernate.internal.SessionImpl.beginTransaction(SessionImpl.java:1431)at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)atsun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)atsun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)at java.lang.reflect.Method.invoke(Method.java:606)atorg.hibernate.context.internal.ThreadLocalSessionContext$TransactionProtectionWrapper.invoke(ThreadLocalSessionContext.java:356)at com.sun.proxy.$Proxy264.beginTransaction(Unknown Source)atcom.appglass.data.dao.ConstantesDAO.cargarConstantes(ConstantesDAO.java:32)atcom.appglass.jasper.CorteScriptlet.<init>(CorteScriptlet.java:17)at sun.reflect.NativeConstructorAccessorImpl.newInstance0(NativeMethod)atsun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)atsun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)at java.lang.reflect.Constructor.newInstance(Constructor.java:526)at java.lang.Class.newInstance(Class.java:383)atnet.sf.jasperreports.engine.scriptlets.DefaultScriptletFactory.getScriptlet(DefaultScriptletFactory.java:110)atnet.sf.jasperreports.engine.scriptlets.DefaultScriptletFactory.getScriplets(DefaultScriptletFactory.java:69)atnet.sf.jasperreports.engine.fill.JRFillDataset.createScriptlets(JRFillDataset.java:502)atnet.sf.jasperreports.engine.fill.JRFillDataset.setParameterValues(JRFillDataset.java:619)atnet.sf.jasperreports.engine.fill.JRBaseFiller.setParameters(JRBaseFiller.java:1252)atnet.sf.jasperreports.engine.fill.JRBaseFiller.fill(JRBaseFiller.java:877)atnet.sf.jasperreports.engine.fill.JRBaseFiller.fill(JRBaseFiller.java:822)atnet.sf.jasperreports.engine.fill.JRFillSubreport.fillSubreport(JRFillSubreport.java:652)atnet.sf.jasperreports.engine.fill.JRSubreportRunnable.run(JRSubreportRunnable.java:59)atorg.apache.commons.javaflow.bytecode.StackRecorder.execute(StackRecorder.java:95)atorg.apache.commons.javaflow.Continuation.continueWith(Continuation.java:170)atorg.apache.commons.javaflow.Continuation.startWith(Continuation.java:129)atorg.apache.commons.javaflow.Continuation.startWith(Continuation.java:102)atnet.sf.jasperreports.engine.fill.JRContinuationSubreportRunner.start(JRContinuationSubreportRunner.java:53)atnet.sf.jasperreports.engine.fill.JRFillSubreport.prepare(JRFillSubreport.java:737)atnet.sf.jasperreports.engine.fill.JRFillElementContainer.prepareElements(JRFillElementContainer.java:328)atnet.sf.jasperreports.engine.fill.JRFillBand.fill(JRFillBand.java:377)atnet.sf.jasperreports.engine.fill.JRFillBand.fill(JRFillBand.java:351)atnet.sf.jasperreports.engine.fill.JRVerticalFiller.fillColumnBand(JRVerticalFiller.java:2039)atnet.sf.jasperreports.engine.fill.JRVerticalFiller.fillDetail(JRVerticalFiller.java:771)atnet.sf.jasperreports.engine.fill.JRVerticalFiller.fillReportStart(JRVerticalFiller.java:281)atnet.sf.jasperreports.engine.fill.JRVerticalFiller.fillReport(JRVerticalFiller.java:144)atnet.sf.jasperreports.engine.fill.JRBaseFiller.fill(JRBaseFiller.java:909)atnet.sf.jasperreports.engine.fill.JRBaseFiller.fill(JRBaseFiller.java:822)at net.sf.jasperreports.engine.fill.JRFiller.fill(JRFiller.java:61)atnet.sf.jasperreports.engine.JasperFillManager.fill(JasperFillManager.java:446)atnet.sf.jasperreports.engine.JasperFillManager.fill(JasperFillManager.java:407)atnet.sf.jasperreports.engine.JasperFillManager.fillReport(JasperFillManager.java:824)at com.appglass.jasper.Reportes.crearPDF(Reportes.java:321)atcom.appglass.backing.ProyectoAgregadoBacking.crearPDF(ProyectoAgregadoBacking.java:99)at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)atsun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)atsun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)at java.lang.reflect.Method.invoke(Method.java:606)at com.sun.el.parser.AstValue.invoke(AstValue.java:289)atcom.sun.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:304)atorg.jboss.weld.util.el.ForwardingMethodExpression.invoke(ForwardingMethodExpression.java:40)atorg.jboss.weld.el.WeldMethodExpression.invoke(WeldMethodExpression.java:50)atjavax.faces.event.MethodExpressionActionListener.processAction(MethodExpressionActionListener.java:149)at javax.faces.event.ActionEvent.processListener(ActionEvent.java:88)atjavax.faces.component.UIComponentBase.broadcast(UIComponentBase.java:813)at javax.faces.component.UICommand.broadcast(UICommand.java:300)atjavax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:790)atjavax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:1282)atcom.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:81)at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)atcom.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:198)at javax.faces.webapp.FacesServlet.service(FacesServlet.java:646)atorg.apache.catalina.core.StandardWrapper.service(StandardWrapper.java:1682)atorg.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:344)atorg.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214)atorg.primefaces.webapp.filter.FileUploadFilter.doFilter(FileUploadFilter.java:70)atorg.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:256)atorg.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214)atorg.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:316)atorg.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:160)atorg.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:734)atorg.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:673)at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:99)atorg.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:174)atorg.apache.catalina.connector.CoyoteAdapter.doService(CoyoteAdapter.java:415)atorg.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:282)atcom.sun.enterprise.v3.services.impl.ContainerMapper$HttpHandlerCallable.call(ContainerMapper.java:459)atcom.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:167)atorg.glassfish.grizzly.http.server.HttpHandler.runService(HttpHandler.java:201)atorg.glassfish.grizzly.http.server.HttpHandler.doHandle(HttpHandler.java:175)atorg.glassfish.grizzly.http.server.HttpServerFilter.handleRead(HttpServerFilter.java:235)atorg.glassfish.grizzly.filterchain.ExecutorResolver$9.execute(ExecutorResolver.java:119)atorg.glassfish.grizzly.filterchain.DefaultFilterChain.executeFilter(DefaultFilterChain.java:284)atorg.glassfish.grizzly.filterchain.DefaultFilterChain.executeChainPart(DefaultFilterChain.java:201)atorg.glassfish.grizzly.filterchain.DefaultFilterChain.execute(DefaultFilterChain.java:133)atorg.glassfish.grizzly.filterchain.DefaultFilterChain.process(DefaultFilterChain.java:112)atorg.glassfish.grizzly.ProcessorExecutor.execute(ProcessorExecutor.java:77)atorg.glassfish.grizzly.nio.transport.TCPNIOTransport.fireIOEvent(TCPNIOTransport.java:561)atorg.glassfish.grizzly.strategies.AbstractIOStrategy.fireIOEvent(AbstractIOStrategy.java:112)atorg.glassfish.grizzly.strategies.WorkerThreadIOStrategy.run0(WorkerThreadIOStrategy.java:117)atorg.glassfish.grizzly.strategies.WorkerThreadIOStrategy.access$100(WorkerThreadIOStrategy.java:56)atorg.glassfish.grizzly.strategies.WorkerThreadIOStrategy$WorkerThreadRunnable.run(WorkerThreadIOStrategy.java:137)atorg.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:565)atorg.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:545)at java.lang.Thread.run(Thread.java:745)[/code]and also this: net.sf.jasperreports.engine.JRRuntimeException:net.sf.jasperreports.engine.JRException: Error creating scriptlet classinstance : com.appglass.jasper.CorteScriptletjavax.el.ELException: net.sf.jasperreports.engine.JRRuntimeException:net.sf.jasperreports.engine.JRException: Error creating scriptlet classinstance : com.appglass.jasper.CorteScriptletat com.sun.el.parser.AstValue.invoke(AstValue.java:293)atcom.sun.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:304)atorg.jboss.weld.util.el.ForwardingMethodExpression.invoke(ForwardingMethodExpression.java:40)atorg.jboss.weld.el.WeldMethodExpression.invoke(WeldMethodExpression.java:50)atjavax.faces.event.MethodExpressionActionListener.processAction(MethodExpressionActionListener.java:149)at javax.faces.event.ActionEvent.processListener(ActionEvent.java:88)atjavax.faces.component.UIComponentBase.broadcast(UIComponentBase.java:813)at javax.faces.component.UICommand.broadcast(UICommand.java:300)atjavax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:790)atjavax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:1282)atcom.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:81)at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)atcom.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:198)at javax.faces.webapp.FacesServlet.service(FacesServlet.java:646)atorg.apache.catalina.core.StandardWrapper.service(StandardWrapper.java:1682)atorg.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:344)atorg.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214)atorg.primefaces.webapp.filter.FileUploadFilter.doFilter(FileUploadFilter.java:70)atorg.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:256)atorg.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214)atorg.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:316)atorg.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:160)atorg.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:734)atorg.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:673)at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:99)atorg.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:174)atorg.apache.catalina.connector.CoyoteAdapter.doService(CoyoteAdapter.java:415)atorg.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:282)atcom.sun.enterprise.v3.services.impl.ContainerMapper$HttpHandlerCallable.call(ContainerMapper.java:459)atcom.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:167)atorg.glassfish.grizzly.http.server.HttpHandler.runService(HttpHandler.java:201)atorg.glassfish.grizzly.http.server.HttpHandler.doHandle(HttpHandler.java:175)atorg.glassfish.grizzly.http.server.HttpServerFilter.handleRead(HttpServerFilter.java:235)atorg.glassfish.grizzly.filterchain.ExecutorResolver$9.execute(ExecutorResolver.java:119)atorg.glassfish.grizzly.filterchain.DefaultFilterChain.executeFilter(DefaultFilterChain.java:284)atorg.glassfish.grizzly.filterchain.DefaultFilterChain.executeChainPart(DefaultFilterChain.java:201)atorg.glassfish.grizzly.filterchain.DefaultFilterChain.execute(DefaultFilterChain.java:133)atorg.glassfish.grizzly.filterchain.DefaultFilterChain.process(DefaultFilterChain.java:112)atorg.glassfish.grizzly.ProcessorExecutor.execute(ProcessorExecutor.java:77)atorg.glassfish.grizzly.nio.transport.TCPNIOTransport.fireIOEvent(TCPNIOTransport.java:561)atorg.glassfish.grizzly.strategies.AbstractIOStrategy.fireIOEvent(AbstractIOStrategy.java:112)atorg.glassfish.grizzly.strategies.WorkerThreadIOStrategy.run0(WorkerThreadIOStrategy.java:117)atorg.glassfish.grizzly.strategies.WorkerThreadIOStrategy.access$100(WorkerThreadIOStrategy.java:56)atorg.glassfish.grizzly.strategies.WorkerThreadIOStrategy$WorkerThreadRunnable.run(WorkerThreadIOStrategy.java:137)atorg.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:565)atorg.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:545)at java.lang.Thread.run(Thread.java:745)Caused by: net.sf.jasperreports.engine.JRRuntimeException:net.sf.jasperreports.engine.JRException: Error creating scriptlet classinstance : com.appglass.jasper.CorteScriptletatnet.sf.jasperreports.engine.fill.JRFillSubreport.prepare(JRFillSubreport.java:762)atnet.sf.jasperreports.engine.fill.JRFillElementContainer.prepareElements(JRFillElementContainer.java:328)atnet.sf.jasperreports.engine.fill.JRFillBand.fill(JRFillBand.java:377)atnet.sf.jasperreports.engine.fill.JRFillBand.fill(JRFillBand.java:351)atnet.sf.jasperreports.engine.fill.JRVerticalFiller.fillColumnBand(JRVerticalFiller.java:2039)atnet.sf.jasperreports.engine.fill.JRVerticalFiller.fillDetail(JRVerticalFiller.java:771)atnet.sf.jasperreports.engine.fill.JRVerticalFiller.fillReportStart(JRVerticalFiller.java:281)atnet.sf.jasperreports.engine.fill.JRVerticalFiller.fillReport(JRVerticalFiller.java:144)atnet.sf.jasperreports.engine.fill.JRBaseFiller.fill(JRBaseFiller.java:909)atnet.sf.jasperreports.engine.fill.JRBaseFiller.fill(JRBaseFiller.java:822)at net.sf.jasperreports.engine.fill.JRFiller.fill(JRFiller.java:61)atnet.sf.jasperreports.engine.JasperFillManager.fill(JasperFillManager.java:446)atnet.sf.jasperreports.engine.JasperFillManager.fill(JasperFillManager.java:407)atnet.sf.jasperreports.engine.JasperFillManager.fillReport(JasperFillManager.java:824)at com.appglass.jasper.Reportes.crearPDF(Reportes.java:321)atcom.appglass.backing.ProyectoAgregadoBacking.crearPDF(ProyectoAgregadoBacking.java:99)at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)atsun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)atsun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)at java.lang.reflect.Method.invoke(Method.java:606)at com.sun.el.parser.AstValue.invoke(AstValue.java:289)... 46 moreCaused by: net.sf.jasperreports.engine.JRException: Error creatingscriptlet class instance : com.appglass.jasper.CorteScriptletatnet.sf.jasperreports.engine.scriptlets.DefaultScriptletFactory.getScriptlet(DefaultScriptletFactory.java:118)atnet.sf.jasperreports.engine.scriptlets.DefaultScriptletFactory.getScriplets(DefaultScriptletFactory.java:69)atnet.sf.jasperreports.engine.fill.JRFillDataset.createScriptlets(JRFillDataset.java:502)atnet.sf.jasperreports.engine.fill.JRFillDataset.setParameterValues(JRFillDataset.java:619)atnet.sf.jasperreports.engine.fill.JRBaseFiller.setParameters(JRBaseFiller.java:1252)atnet.sf.jasperreports.engine.fill.JRBaseFiller.fill(JRBaseFiller.java:877)atnet.sf.jasperreports.engine.fill.JRBaseFiller.fill(JRBaseFiller.java:822)atnet.sf.jasperreports.engine.fill.JRFillSubreport.fillSubreport(JRFillSubreport.java:652)atnet.sf.jasperreports.engine.fill.JRSubreportRunnable.run(JRSubreportRunnable.java:59)atorg.apache.commons.javaflow.bytecode.StackRecorder.execute(StackRecorder.java:95)atorg.apache.commons.javaflow.Continuation.continueWith(Continuation.java:170)atorg.apache.commons.javaflow.Continuation.startWith(Continuation.java:129)atorg.apache.commons.javaflow.Continuation.startWith(Continuation.java:102)atnet.sf.jasperreports.engine.fill.JRContinuationSubreportRunner.start(JRContinuationSubreportRunner.java:53)atnet.sf.jasperreports.engine.fill.JRFillSubreport.prepare(JRFillSubreport.java:737)... 66 moreCaused by: org.hibernate.TransactionException: nested transactions notsupportedatorg.hibernate.engine.transaction.spi.AbstractTransactionImpl.begin(AbstractTransactionImpl.java:154)atorg.hibernate.internal.SessionImpl.beginTransaction(SessionImpl.java:1431)at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)atsun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)atsun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)at java.lang.reflect.Method.invoke(Method.java:606)atorg.hibernate.context.internal.ThreadLocalSessionContext$TransactionProtectionWrapper.invoke(ThreadLocalSessionContext.java:356)at com.sun.proxy.$Proxy264.beginTransaction(Unknown Source)atcom.appglass.data.dao.ConstantesDAO.cargarConstantes(ConstantesDAO.java:32)atcom.appglass.jasper.CorteScriptlet.<init>(CorteScriptlet.java:17)at sun.reflect.NativeConstructorAccessorImpl.newInstance0(NativeMethod)atsun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)atsun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)at java.lang.reflect.Constructor.newInstance(Constructor.java:526)at java.lang.Class.newInstance(Class.java:383)atnet.sf.jasperreports.engine.scriptlets.DefaultScriptletFactory.getScriptlet(DefaultScriptletFactory.java:110)... 80 more[/code] public void crearPDF(Integer idProyecto, Usuarios usuario, String email, Boolean archivoDoc, Locale locale) throws SQLException { System.err.println("Entrando en crearPDF"); //String ruta = "\\SERVER\producción\PDFAPP\" + usuario.getNombre() + "\"; String ruta = "/home/haritz/pdfapp/" + usuario.getNombre() + "/"; Integer versionProyecto; File rutaFile = new File(ruta); JRPdfExporter exp = new JRPdfExporter(); JRPdfExporter exp2 = new JRPdfExporter(); JRDocxExporter expD = new JRDocxExporter(); Connection conn = null; if(!rutaFile.exists()){ rutaFile.mkdirs(); } MailUtil mUtil = new MailUtil(); String nombreProyecto; FacesContext context = FacesContext.getCurrentInstance(); //LOCALIZACIÓN DE INFORMES //Si no viene especificado por el administrador, extraer el idioma del contexto (establecido en función del usuario) if(locale == null){ locale = context.getViewRoot().getLocale(); } //Genera el ResourceBundle que le pasaremos por parámetro ResourceBundle rb = ResourceBundle.getBundle("com.appglass.jasper.resources.report", locale); //Introducimos los parámetros necesarios HashMap <String, Object> map = new HashMap <String, Object>(); map.put("rutaImagenes", (Object) rutaImagenes); map.put("idProyecto", (Object) idProyecto); map.put("archivoDoc", (Object) archivoDoc); map.put(JRParameter.REPORT_LOCALE,locale); map.put(JRParameter.REPORT_RESOURCE_BUNDLE, rb); try{ Session session = HibernateUtil.getSessionFactory().getCurrentSession(); session.beginTransaction(); //Nuevo para conseguir session.connection() en hibernate 4.x SessionFactoryImpl sessionFactory = (SessionFactoryImpl) session.getSessionFactory(); conn = sessionFactory.getConnectionProvider().getConnection(); //session.connection() fue borrado en hibernate 4.x //conn = session.connection();/*JRProperties.setProperty("net.sf.jasperreports.default.pdf.font.name", "Deja Vu Sans");JasperReport jasperReport = JasperCompileManager.compileReport(reportSource);JasperPrint jasperPrint = JasperFillManager.fillReport(jasperReport, params);JasperExportManager.exportReportToPdfFile(jasperPrint, outputFileName); */ InputStream reporte = (InputStream) getClass().getResourceAsStream("/com/appglass/jasper/report2.jasper"); InputStream reporte2 = (InputStream) getClass().getResourceAsStream("/com/appglass/jasper/report2_subreport1B.jasper"); InputStream reporte3 = (InputStream) getClass().getResourceAsStream("/com/appglass/jasper/report2_subreport2B.jasper"); InputStream reporte4 = (InputStream) getClass().getResourceAsStream("/com/appglass/jasper/report2_plano.jasper"); InputStream reporte5 = (InputStream) getClass().getResourceAsStream("/com/appglass/jasper/report2_resumen.jasper"); // Path completo C:/Users/pool/Documents/NetBeansProjects/AppGlass/src/java if ((reporte == null) || reporte2 == null || reporte3 == null || reporte4 == null){ System.err.println("No se ha encontrado el archivo .jasper"); } System.err.println("Antes de llamar a JasperFillManager.fillReport"); JasperPrint jasperPrint = JasperFillManager.fillReport(reporte, map, conn); System.err.println("Report1 done"); JasperPrint jasperPrint2 = JasperFillManager.fillReport(reporte2, map, conn); JasperPrint jasperPrint3 = JasperFillManager.fillReport(reporte3, map, conn); JasperPrint jasperPrint4 = JasperFillManager.fillReport(reporte4, map, conn); JasperPrint jasperPrint5 = JasperFillManager.fillReport(reporte5, map, conn); System.err.println("Antes de llamar a JasperViewer.viewReport"); //Para exportar el PDF al cliente HttpServletResponse response = (HttpServletResponse) context.getExternalContext().getResponse(); List list = new ArrayList(); list.add(jasperPrint4); list.add(jasperPrint5); list.add(jasperPrint); list.add(jasperPrint2); list.add(jasperPrint3); if(!archivoDoc){ exp.setParameter(JRPdfExporterParameter.JASPER_PRINT_LIST, list); exp2.setParameter(JRPdfExporterParameter.JASPER_PRINT_LIST, list); exp.setParameter(JRExporterParameter.CHARACTER_ENCODING, "UTF-8"); exp.setParameter(JRExporterParameter.CHARACTER_ENCODING, "UTF-8"); } nombreProyecto = queryGetNombreProyecto(conn, idProyecto); versionProyecto = queryGetVersionProyecto(conn, idProyecto); if(!archivoDoc){ //Fijamos como salida un fichero en SERVER exp2.setParameter(JRExporterParameter.OUTPUT_FILE_NAME, ruta + nombreProyecto + "version" + (versionProyecto + 1) + ".pdf"); exp2.setParameter(JRPdfExporterParameter.METADATA_AUTHOR, usuario.getNombre()); exp2.setParameter(JRPdfExporterParameter.METADATA_TITLE, nombreProyecto); exp2.exportReport(); } else { expD.setParameter(JRDocxExporterParameter.JASPER_PRINT_LIST, list); //Fijamos como salida un fichero en SERVER expD.setParameter(JRExporterParameter.OUTPUT_FILE_NAME, ruta + nombreProyecto + "(" + (versionProyecto + 1) + ").doc"); //Fijamos como salida la un fichero en el servidor remoto expD.exportReport(); } //Enviamos el mail de confirmación con el informe adjunto mUtil.confirmacionInforme(email, usuario, nombreProyecto, archivoDoc, versionProyecto + 1); //Fijamos como salida el lector de PDF del navegador if(!archivoDoc){ response.setHeader("Content-Type", "application/pdf; charset=UTF-8"); response.setHeader("Content-disposition", "attachment; filename*=UTF-8''" + URLEncoder.encode(nombreProyecto, "UTF-8") + ".pdf"); exp.setParameter(JRExporterParameter.OUTPUT_STREAM, response.getOutputStream()); exp.exportReport(); } //session.getTransaction().commit(); conn.close(); }catch(SQLException sqlEx){ System.err.println("Error creando el PDF"); System.err.println(sqlEx.getClass()); System.err.println(sqlEx.getCause()); System.err.println(sqlEx.getMessage()); } catch (HibernateException ex) { System.err.println("Error creando el PDF"); System.err.println(ex.getClass()); System.err.println(ex.getCause()); System.err.println(ex.getMessage()); } catch (JRException ex) { System.err.println("Error creando el PDF"); System.err.println(ex.getClass()); System.err.println(ex.getCause()); System.err.println(ex.getMessage()); } catch (IOException ex) { System.err.println("Error creando el PDF"); System.err.println(ex.getClass()); System.err.println(ex.getCause()); System.err.println(ex.getMessage()); } finally { if(conn != null){ conn.close(); } } System.err.println("Antes de responseComplete"); FacesContext.getCurrentInstance().responseComplete(); }[/code]Does anybody have any idea of what is going on?Thank you! Link to comment Share on other sites More sharing options...
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now