Jump to content
  • JRViewer completly freeze Swing aplication


    realnull
    Assigned User teodord
    CategoryBug report
    PriorityImmediate
    ReproducibilityAlways
    ResolutionFixed
    SeverityBlock
    StatusClosed

    If you add formula that point to imagelocation that is not exist, exepction is thrown, also some popup window is shown without message. and you can't close viewer and whole application is blocked.

     

    java.lang.NullPointerException

    at net.sf.jasperreports.engine.JRImageRenderer.getImageData(JRImageRenderer.java:389)

    at net.sf.jasperreports.engine.JRImageRenderer.getImage(JRImageRenderer.java:330)

    at net.sf.jasperreports.engine.JRImageRenderer.getDimension(JRImageRenderer.java:371)

    at net.sf.jasperreports.engine.export.JRGraphics2DExporter.exportImage(JRGraphics2DExporter.java:511)

    at net.sf.jasperreports.engine.export.JRGraphics2DExporter.exportElements(JRGraphics2DExporter.java:281)

    at net.sf.jasperreports.engine.export.JRGraphics2DExporter.exportPage(JRGraphics2DExporter.java:240)

    at net.sf.jasperreports.engine.export.JRGraphics2DExporter.exportReportToGraphics2D(JRGraphics2DExporter.java:212)

    at net.sf.jasperreports.engine.export.JRGraphics2DExporter.exportReport(JRGraphics2DExporter.java:161)

    at net.sf.jasperreports.view.JRViewer.paintPage(JRViewer.java:1881)

    at net.sf.jasperreports.view.JRViewer$PageRenderer.paintComponent(JRViewer.java:1920)

    at javax.swing.JComponent.paint(Unknown Source)

    at javax.swing.JComponent.paintChildren(Unknown Source)

    at javax.swing.JComponent.paint(Unknown Source)

    at javax.swing.JComponent.paintChildren(Unknown Source)

    at javax.swing.JComponent.paint(Unknown Source)

    at javax.swing.JComponent.paintChildren(Unknown Source)

    at javax.swing.JComponent.paint(Unknown Source)

    at javax.swing.JComponent.paintChildren(Unknown Source)

    at javax.swing.JComponent.paint(Unknown Source)

    at javax.swing.JViewport.paint(Unknown Source)

    at javax.swing.JComponent.paintChildren(Unknown Source)

    at javax.swing.JComponent.paint(Unknown Source)

    at javax.swing.JComponent.paintChildren(Unknown Source)

    at javax.swing.JComponent.paint(Unknown Source)

    at javax.swing.JComponent.paintChildren(Unknown Source)

    at javax.swing.JComponent.paint(Unknown Source)

    at javax.swing.JComponent.paintChildren(Unknown Source)

    at javax.swing.JComponent.paint(Unknown Source)

    at javax.swing.JComponent.paintChildren(Unknown Source)

    at javax.swing.JComponent.paint(Unknown Source)

    at javax.swing.JComponent.paintChildren(Unknown Source)

    at javax.swing.JComponent.paint(Unknown Source)

    at javax.swing.JLayeredPane.paint(Unknown Source)

    at javax.swing.JComponent.paintChildren(Unknown Source)

    at javax.swing.JComponent.paintToOffscreen(Unknown Source)

    at javax.swing.BufferStrategyPaintManager.paint(Unknown Source)

    at javax.swing.RepaintManager.paint(Unknown Source)

    at javax.swing.JComponent.paint(Unknown Source)

    at java.awt.GraphicsCallback$PaintCallback.run(Unknown Source)

    at sun.awt.SunGraphicsCallback.runOneComponent(Unknown Source)

    at sun.awt.SunGraphicsCallback.runComponents(Unknown Source)

    at java.awt.Container.paint(Unknown Source)

    at javax.swing.RepaintManager.paintDirtyRegions(Unknown Source)

    at javax.swing.RepaintManager.paintDirtyRegions(Unknown Source)

    at javax.swing.RepaintManager.seqPaintDirtyRegions(Unknown Source)

    at javax.swing.SystemEventQueueUtilities$ComponentWorkRequest.run(Unknown Source)

    at java.awt.event.InvocationEvent.dispatch(Unknown Source)

    at java.awt.EventQueue.dispatchEvent(Unknown Source)

    at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)

    at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)

    at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)

    at java.awt.EventDispatchThread.pumpEvents(Unknown Source)

    at java.awt.EventDispatchThread.pumpEvents(Unknown Source)

    at java.awt.EventDispatchThread.run(Unknown Source)


    Attachments: scannedVouchers.jrxml

    User Feedback

    Recommended Comments

    I have the same problem with the same report, in case where i have like 600-1000 images, aplication is frozen for about 10-30 seconds. Can you move rendering outside awt thread, and place the rendering code into separate thread ?
    Link to comment
    Share on other sites

    Yes even JR 2.0.0 is having the same problem with long reports, for about 500 images it freeze aplication for arround 10-15 seconds, while it only need to display JasperPrint, everything else is made in swingWorker
    Link to comment
    Share on other sites

     

    Hi,

     

    Do you have image elements with onErrorType="Error"?

    If so, try to use either "Icon" or "Blank".

    If you don\'t have such images, then I\'d like to see a JR 2.0.0 stacktrace, if available.

     

    Thank you,

    Teodor

     

    Link to comment
    Share on other sites


×
×
  • Create New...