LINUX.ORG.RU

Jasper Reports


0

0

В сервлете есть код :

ServletOutputStream servletOutputStream = response.getOutputStream(); InputStream reportStream = getServletConfig().getServletContext().getResourceAsStream("/reports/FirstRepor t.jrxml"); try { JasperRunManager.runReportToPdfStream(reportStream, servletOutputStream, new HashMap(), new JREmptyDataSource()); response.setContentType("application/pdf"); servletOutputStream.flush(); servletOutputStream.close(); } catch (JRException e) { StringWriter stringWriter = new StringWriter(); PrintWriter printWriter = new PrintWriter(stringWriter); e.printStackTrace(printWriter); response.setContentType("text/plain"); response.getOutputStream().print(stringWriter.toString()); response.getOutputStream().print(e.getMessage()); }

Но после выполнения вываливается следующая ошибка:

net.sf.jasperreports.engine.JRException: Error loading object from InputStream at net.sf.jasperreports.engine.util.JRLoader.loadObject(JRLoader.java:196) at net.sf.jasperreports.engine.JasperFillManager.fillReport(JasperFillManager.java :580) at net.sf.jasperreports.engine.JasperRunManager.runReportToPdfStream(JasperRunMana ger.java:368) at bu.grsu.test.STest.processRequest(STest.java:40) at bu.grsu.test.STest.doGet(STest.java:61) at javax.servlet.http.HttpServlet.service(HttpServlet.java:689) at javax.servlet.http.HttpServlet.service(HttpServlet.java:802) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFil terChain.java:252) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain .java:173) at org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.ja va:362) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFil terChain.java:202) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain .java:173) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java: 213) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java: 178) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:10 7) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:856) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnecti on(Http11Protocol.java:744) at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:5 27) at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorke rThread.java:80) at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:6 84) at java.lang.Thread.run(Thread.java:595) Caused by: java.io.StreamCorruptedException: invalid stream header at java.io.ObjectInputStream.readStreamHeader(ObjectInputStream.java:753) at java.io.ObjectInputStream.<init>(ObjectInputStream.java:268) at net.sf.jasperreports.engine.util.JRLoader.loadObject(JRLoader.java:191)

anonymous

Учитывая форматирование - сие достойно CodeWTF-а.

Miguel ★★★★★
()

Проверьте путь к файлу: "/reports/FirstRepor t.jrxml", скорее всего он не найден и уберите пробел между буквами r и t.

Falgrim
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.