2005 IR Help Posted August 27, 2006 Share Posted August 27, 2006 By: sven-loe - sven-loe Tomcat + Jasperreports Problem 2004-04-27 03:22 Hello, I have a perfectly working test program for making pdf reports on command line. If I take all the .Jar files and put them in the WEB-INF/lib/ and put the modifyed class in WEB-INF/classes I get this error: C:jakarta-tomcat-5.0.19Umsaetze_FX_Swap.java:90: cannot resolve symbol symbol : variable varsm location: class Umsaetze_FX_Swap variable_SummaryDummyGroup_COUNT = (JRFillVariable)varsm.get("SummaryDum myGroup_COUNT"); ^ 82 errors dori.jasper.engine.JRException: Errors were encountered when compiling report ex pressions class file: See error messages above. at dori.jasper.engine.design.JRAbstractJavaCompiler.compileReport(JRAbst ractJavaCompiler.java:154) at dori.jasper.engine.design.JRDefaultCompiler.compileReport(JRDefaultCo mpiler.java:136) at dori.jasper.engine.JasperCompileManager.compileReport(JasperCompileMa nager.java:196) at dori.jasper.engine.JasperCompileManager.compileReport(JasperCompileMa nager.java:148) at reports.ReportGenerator.generateReport(ReportGenerator.java:122) at reports.MenuAction.execute(MenuAction.java:66) at org.apache.struts.action.RequestProcessor.processActionPerform(Reques tProcessor.java:484) at org.apache.struts.action.RequestProcessor.process(RequestProcessor.ja va:274) at org.apache.struts.action.ActionServlet.process(ActionServlet.java:148 2) at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:525) at javax.servlet.http.HttpServlet.service(HttpServlet.java:763) at javax.servlet.http.HttpServlet.service(HttpServlet.java:856) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl icationFilterChain.java:284) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF ilterChain.java:204) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperV alve.java:257) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValv eContext.java:151) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.jav a:567) at org.apache.catalina.core.StandardContextValve.invokeInternal(Standard ContextValve.java:245) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextV alve.java:199) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValv eContext.java:151) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.jav a:567) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.j ava:184) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValv eContext.java:151) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.j ava:164) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValv eContext.java:149) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.jav a:567) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineVal ve.java:156) at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValv eContext.java:151) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.jav a:567) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:972) at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:20 6) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java :833) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.proce ssConnection(Http11Protocol.java:732) at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java :619) at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadP ool.java:688) at java.lang.Thread.run(Thread.java:534) The error happens when I try to compile my .xml file. I suspect that there is some kind of path problem but I do not know how to configure Tomcat correctly. The Tomcat version is 5.0.19 and Jasperreports 0.5.2. I hope somebody has an idea because I am seriously stuck. Greetings, Sven By: sven-loe - sven-loe RE: Tomcat + Jasperreports Problem 2004-04-27 08:33 Hello Teodor, your hint was all I needed. Thank you The 2 lines I needed were : compile_path="c:/jakarta-tomcat-5.0.19/webapps/etms/WEB-INF/lib/jasperreports-0.5.2.jar;c:/jakarta-tomcat-5.0.19/webapps/etms/WEB-INF/classes"; System.setProperty("jasper.reports.compile.class.path",compile_path); Greetings Sven By: Teodor Danciu - teodord RE: Tomcat + Jasperreports Problem 2004-04-27 05:57 Hi, It is about setting the "jasper.reports.compile.class.path" system property correctly. Check the "webapp" sample provided and the "Quick How To". Thank you, Teodor By: Kalpesh N Mistry - pincoo RE: Tomcat + Jasperreports Problem 2004-05-03 11:39 Sven-loe ...... Gr8 that it hepled you .... Teodor, I m facing problem with blank browser screen. No error but no report too. Let me know some workaround. Have got some reports to be generated in pdf i m using JDK1.4.xx WinXp JRUN server MS ACCESS Also why ireport generated report properly but webapp fails.... have checked webapp sample. infact did modified only the connection and the .jasper report in the sample web app. Still didnt helped. Others have reached to a point wehre they are exlporing abt reports and sub totals.... I m still stucked here with blank screens.... No exception. Need help on streams too. Currently i m callin a bean that generates a pdf rpt on the local drive of server, then i am using jdownload(using pack provided zoom ...) that helps download a report. Its time and resource consuming .... Some working code (other than webapp) attached would do needful for me to explore. Any help / suggestion would be of gr8 help. Thnx in advance .... Regards, Kalpesh N Mistry. Digital@wwmail.co.uk By: Priyank - loginpiri RE: Tomcat + Jasperreports Problem 2004-10-16 06:21 Hi, I'm generating a JasperDesign object without an xml design. After doing so, if i try to compile it as - JasperReport compiledReport = JasperCompileManager.compileReport(design); //where design is a valid JasperDesign object. This works in a dos environment.(i'm using a windows 2000 m/c).But the same program doesn't work when running under Tomcat 4.1 .I've seen many posts in this regard, and as mentioned in the "webapp" example I've also updated the properties as shown below: System.setProperty( "jasper.reports.compile.class.path", context.getRealPath("/WEB-INF/lib/jasperreports-0.6.0.jar") + System.getProperty("path.separator") + context.getRealPath("/WEB-INF/lib/commons-logging-1.0.2.jar") + System.getProperty("path.separator") + context.getRealPath("/WEB-INF/classes/") ); But still I'm getting the following error: java.lang.NoClassDefFoundError at net.sf.jasperreports.engine.design.JRAbstractJavaCompiler.compileReport(JRAbstractJavaCompiler.java:101) at net.sf.jasperreports.engine.design.JRDefaultCompiler.compileReport(JRDefaultCompiler.java:137) at net.sf.jasperreports.engine.JasperCompileManager.compileReport(JasperCompileManager.java:199) at com.huawei.oss.pas.server.reports.actions.modules.PASReportExporter.setCompiledReport(PASReportExporter.java:60) at com.huawei.oss.pas.server.reports.actions.modules.PASReportExporter.exportReport(PASReportExporter.java:89) at com.huawei.oss.pas.server.reports.actions.PASExportReportAction.execute(PASExportReportAction.java:44) at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:484) at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:274) at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1482) at com.huawei.oss.pas.server.reports.ReportsServ.process(ReportsServ.java:108) at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:507) at javax.servlet.http.HttpServlet.service(HttpServlet.java:740) at javax.servlet.http.HttpServlet.service(HttpServlet.java:853) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:247) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:256) at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191) at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995) at org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2415) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180) at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643) at org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:171) at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:172) at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:174) at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643) at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480) at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995) at org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:223) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:594) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:392) at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:565) at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:619) at java.lang.Thread.run(Thread.java:536) any idea how to solve this? By: sven-loe - sven-loe RE: Tomcat + Jasperreports Problem 2004-05-04 07:02 Hello Kalpesh N Mistry, you said you have code that generates a pdf file. So I send you some sample code to display it: <%@ page language="java"%> <%@ page import="dataconn.tmsDataBean" %> <%@ page import="java.io.*"%> <%@ page import="java.util.*"%> <%@ page import="javax.servlet.*"%> <%@ page import="reports.*"%> <% ////////////////////////////////Print Code/////////////////////// ReportGenerator rpg = new ReportGenerator("tms", tmsBean.tmsConn); ByteArrayOutputStream pdfStream = null; if(ID.equals("Umsaetze")) pdfStream = rpg.generateReport("Umsaetze_FX_Termin.xml", CLAUSE+" "+ORDER); if(ID.equals("Lfd_Erg")) pdfStream = rpg.generateReport("Lfd_Erg_FX_Termin.xml", CLAUSE+" "+ORDER); //set the headers. content disposition sets the filename of the download response.setContentLength(pdfStream.size()); response.setContentType("application/pdf"); response.setHeader("Content-Disposition", "attachment; filename=out.pdf"); BufferedOutputStream bos = new BufferedOutputStream(response.getOutputStream()); try{ pdfStream.writeTo(bos); bos.flush(); bos.close(); }catch(Exception e) {e.printStackTrace();}; pdfStream.reset(); pdfStream = null; System.gc(); ////////////////////////////////Print Code/////////////////////// Put it in your .jsp file and test it. The .pdf file should be displayed directly in a pdf viewer. Good Luck Sven By: Kalpesh N Mistry - pincoo RE: Tomcat + Jasperreports Problem 2004-05-04 12:46 Thnx Again.... currently as i said earlier ... i am generating pdf on temp location using a jsp page and then direct download on browser to user on second jsp page. really excited to understand capability of Jasper. Would really try ur code Regards, Kalpesh 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