raffimd Posted June 10, 2007 Share Posted June 10, 2007 Hi, In a jasperreport, I observed I was using isIgnorePagination is set to true. I have removed that, the report is hanging after the JRDataSource calls (next()) gets complete.I use Scriptlet in this report to generate the data for the Pie Chart which is printed in the Summary Page. If I add the isIgnorePagination="true", it is working fine. Since I use Virtualizer, I do not want to set the isIgnorePagination attribute to true. Any clues, why the report is hanging when I set the isIgnorePagination attribute to true? Link to comment Share on other sites More sharing options...
raffimd Posted June 11, 2007 Author Share Posted June 11, 2007 When I ran the report with debug log level, I found that the JasperReports engine is ending up StackOverFlow condition.Code:Caused by: net.sf.jasperreports.engine.JRRuntimeException: java.lang.StackOverflowError at net.sf.jasperreports.engine.fill.JRFillSubreport.prepare(JRFillSubreport.java:614) at net.sf.jasperreports.engine.fill.JRFillElementContainer.prepareElements(JRFillElementContainer.java:343) at net.sf.jasperreports.engine.fill.JRFillBand.fill(JRFillBand.java:323) at net.sf.jasperreports.engine.fill.JRFillBand.fill(JRFillBand.java:282) at net.sf.jasperreports.engine.fill.JRVerticalFiller.fillSummarySamePage(JRVerticalFiller.java:888) at net.sf.jasperreports.engine.fill.JRVerticalFiller.fillSummary(JRVerticalFiller.java:820) at net.sf.jasperreports.engine.fill.JRVerticalFiller.fillReportEnd(JRVerticalFiller.java:263) at net.sf.jasperreports.engine.fill.JRVerticalFiller.fillReport(JRVerticalFiller.java:120) at net.sf.jasperreports.engine.fill.JRBaseFiller.fill(JRBaseFiller.java:767) at net.sf.jasperreports.engine.fill.JRBaseFiller.fill(JRBaseFiller.java:690) at net.sf.jasperreports.engine.fill.JRFiller.fillReport(JRFiller.java:89) at net.sf.jasperreports.engine.JasperFillManager.fillReport(JasperFillManager.java:601) at com.lucent.qip.reports.PagedDataReportGenerator.fillReport(PagedDataReportGenerator.java:47) at com.lucent.qip.reports.JasperReportGenerator.generateReport(JasperReportGenerator.java:273) at com.lucent.qip.reports.JasperReportFactory.generateReport(JasperReportFactory.java:36) at com.lucent.qip.service.impl.ReportsServiceImpl.generateReport(ReportsServiceImpl.java:214) ... 95 moreCaused by: java.lang.StackOverflowError at java.util.HashMap$EntryIterator.<init>(HashMap.java:831) at java.util.HashMap$EntryIterator.<init>(HashMap.java:831) at java.util.HashMap.newEntryIterator(HashMap.java:845) at java.util.HashMap$EntrySet.iterator(HashMap.java:949) at java.util.AbstractMap.hashCode(AbstractMap.java:459) HashMap and AbstractMap calls goes into infinitive recusrsive loop.If I remove the subreports in the summary, the report is coming up.Can't I populate JRDataSource implementation using a scriptlet and use that datasource for the chart subreport in the summary? Link to comment Share on other sites More sharing options...
raffimd Posted June 11, 2007 Author Share Posted June 11, 2007 My Environment:Jasper Reports - JavaFlow 1.3.2JDK 1.6 Link to comment Share on other sites More sharing options...
raffimd Posted June 11, 2007 Author Share Posted June 11, 2007 I included the src of the jasperreports in Eclipse and debugged. Looks like it has some problem printing the subreport in the summary. Don't know whether it was a Java Continuation problem, or Virtualizer problem.Just before the StackFlow error, I got the following stack Code:JRVerticalFiller.addPage(boolean) line: 1182 JRVerticalFiller.fillTitle() line: 285 JRVerticalFiller.fillReportStart() line: 224 JRVerticalFiller.fillReport() line: 113 JRVerticalFiller(JRBaseFiller).fill(Map) line: 767 JRVerticalFiller(JRBaseFiller).fill(Map, JRDataSource) line: 690 JRFillSubreport.fillSubreport() line: 515 JRContinuationSubreportRunner(JRSubreportRunnable).run() line: 63 StackRecorder.execute(Object) line: 95 Continuation.continueWith(Continuation, Object) line: 170 Continuation.startWith(Runnable, Object) line: 129 Continuation.startWith(Runnable) line: 102 JRContinuationSubreportRunner.start() line: 57 JRFillSubreport.prepare(int, boolean) line: 589 JRFillBand(JRFillElementContainer).prepareElements(int, boolean) line: 343 JRFillBand.fill(int, boolean) line: 323 JRFillBand.fill(int) line: 282 JRVerticalFiller.fillSummarySamePage() line: 888 JRVerticalFiller.fillSummary() line: 820 After this, in JRVerticalFiller.addPage() - Line 1185, the code is suspending the Continuation Subreport Runner. I could not understand why it is suspending...After that See the StackOverFlow Error. Does anyone use Javaflow and Virtualizer together and have Subreport in the Summary band? Any help is really appreciated. 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