Jump to content
We've recently updated our Privacy Statement, available here ×

Huge report


sharkoff76

Recommended Posts

Hello 

Im using jasperreport-6.16.0  & JasperStarter (for launch from command line) compiled with  jasperreport-6.16.0 
So with jrxml with huge amount row  (test example)

    <queryString language="SQL">
        <![CDATA[sELECT 'cdscscds' ACCBANKCODE,
       'xxxxx' BANKACCOUNTNUMBER,
       'usd' CURRENCY,
       rownum BANKACCOUNTNAME,
       SYSDATE LASTMOVEDATE
  FROM dual
CONNECT BY LEVEL < 1100000]]>
    </queryString>

Im getting sometime:

Exception in thread "main" java.lang.OutOfMemoryError: Java heap space
        at net.sf.jasperreports.engine.export.Grid.<init>(Grid.java:40)
        at net.sf.jasperreports.engine.export.JRGridLayout.layoutGrid(JRGridLayout.java:259)
        at net.sf.jasperreports.engine.export.JRGridLayout.<init>(JRGridLayout.java:150)
        at net.sf.jasperreports.engine.export.JRXlsAbstractExporter.exportPage(JRXlsAbstractExporter.java:1067)
        at net.sf.jasperreports.engine.export.ooxml.JRXlsxExporter.exportPage(JRXlsxExporter.java:268)
        at net.sf.jasperreports.engine.export.JRXlsAbstractExporter.exportReportToStream(JRXlsAbstractExporter.java:1031)
        at net.sf.jasperreports.engine.export.JRXlsAbstractExporter.exportReport(JRXlsAbstractExporter.java:879)
        at de.cenote.jasperstarter.Report.exportXlsx(Report.java:572)
        at de.cenote.jasperstarter.App.processReport(App.java:259)
        at de.cenote.jasperstarter.App.main(App.java:109)

 

Some time:

Exception in thread "main" java.lang.OutOfMemoryError: GC overhead limit exceeded
        at sun.reflect.GeneratedConstructorAccessor6.newInstance(Unknown Source)
        at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
        at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
        at net.sf.jasperreports.engine.virtualization.SerializableSerializer.read(SerializableSerializer.java:120)
        at net.sf.jasperreports.engine.virtualization.SerializableSerializer.read(SerializableSerializer.java:34)
        at net.sf.jasperreports.engine.virtualization.VirtualizationInput.readJRObject(VirtualizationInput.java:105)
        at net.sf.jasperreports.engine.virtualization.VirtualizationInput.readJRObject(VirtualizationInput.java:69)
        at net.sf.jasperreports.engine.base.VirtualElementsData.readVirtualized(VirtualElementsData.java:179)
        at net.sf.jasperreports.engine.virtualization.SerializableSerializer.read(SerializableSerializer.java:131)
        at net.sf.jasperreports.engine.virtualization.SerializableSerializer.read(SerializableSerializer.java:34)
        at net.sf.jasperreports.engine.virtualization.VirtualizationInput.readJRObject(VirtualizationInput.java:105)
        at net.sf.jasperreports.engine.virtualization.VirtualizationInput.readJRObject(VirtualizationInput.java:69)
        at net.sf.jasperreports.engine.util.VirtualizationSerializer.readData(VirtualizationSerializer.java:67)
        at net.sf.jasperreports.engine.util.VirtualizationSerializer.readData(VirtualizationSerializer.java:60)
        at net.sf.jasperreports.engine.fill.JRAbstractLRUVirtualizer.readData(JRAbstractLRUVirtualizer.java:663)
        at net.sf.jasperreports.engine.fill.JRFileVirtualizer.pageIn(JRFileVirtualizer.java:183)
        at net.sf.jasperreports.engine.fill.JRAbstractLRUVirtualizer.requestData(JRAbstractLRUVirtualizer.java:537)
        at net.sf.jasperreports.engine.base.ElementsBlock.ensureData(ElementsBlock.java:353)
        at net.sf.jasperreports.engine.base.ElementsBlock.ensureDataAndTouch(ElementsBlock.java:321)
        at net.sf.jasperreports.engine.base.ElementsBlock.get(ElementsBlock.java:160)
        at net.sf.jasperreports.engine.base.ElementsBlockList.get(ElementsBlockList.java:129)
        at net.sf.jasperreports.engine.base.VirtualizableElementList.get(VirtualizableElementList.java:95)
        at net.sf.jasperreports.engine.base.VirtualizableElementList.get(VirtualizableElementList.java:42)
        at java.util.AbstractList$ListItr.previous(AbstractList.java:403)
        at net.sf.jasperreports.engine.export.JRGridLayout.setGridElements(JRGridLayout.java:367)
        at net.sf.jasperreports.engine.export.JRGridLayout.layoutGrid(JRGridLayout.java:275)
        at net.sf.jasperreports.engine.export.JRGridLayout.<init>(JRGridLayout.java:150)
        at net.sf.jasperreports.engine.export.JRXlsAbstractExporter.exportPage(JRXlsAbstractExporter.java:1067)
        at net.sf.jasperreports.engine.export.ooxml.JRXlsxExporter.exportPage(JRXlsxExporter.java:268)
        at net.sf.jasperreports.engine.export.JRXlsAbstractExporter.exportReportToStream(JRXlsAbstractExporter.java:1031)
        at net.sf.jasperreports.engine.export.JRXlsAbstractExporter.exportReport(JRXlsAbstractExporter.java:879)

Im using virtualize for FILL report. It work perfectly. But in export i get problem. Is any tip or tricks for Export huge report? Thanks!

 

Link to comment
Share on other sites

  • Replies 1
  • Created
  • Last Reply

Top Posters In This Topic

Top Posters In This Topic

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 account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...