Uploaded image for project: 'IGB'
  1. IGB
  2. IGBF-714

Pressing the "Save As" button when Exporting an Image generates an exception

    Details

      Description

      I noticed that pressing the "Save As" button when Exporting an Image generates an exception (see below):

      17:27:20.807 ERROR c.l.image.exporter.ExportDialog - String index out of range: -1
      java.lang.StringIndexOutOfBoundsException: String index out of range: -1
      at java.lang.String.substring(Unknown Source) ~[na:1.8.0_40]
      at com.lorainelab.image.exporter.ExportDialog.saveAsButtonActionPerformed(ExportDialog.java:314) ~[image-exporter-8.4.0.jar:na]
      at com.lorainelab.image.exporter.ExportDialogGui.lambda$addMainPanel$1(ExportDialogGui.java:72) [image-exporter-8.4.0.jar:na]
      at com.lorainelab.image.exporter.ExportDialogGui$$Lambda$180/791740842.actionPerformed(Unknown Source) [image-exporter-8.4.0.jar:na]
      at javax.swing.AbstractButton.fireActionPerformed(Unknown Source) [na:1.8.0_40]
      at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source) [na:1.8.0_40]
      at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source) [na:1.8.0_40]
      at javax.swing.DefaultButtonModel.setPressed(Unknown Source) [na:1.8.0_40]
      at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Source) [na:1.8.0_40]
      at java.awt.Component.processMouseEvent(Unknown Source) [na:1.8.0_40]
      at javax.swing.JComponent.processMouseEvent(Unknown Source) [na:1.8.0_40]
      at java.awt.Component.processEvent(Unknown Source) [na:1.8.0_40]
      at java.awt.Container.processEvent(Unknown Source) [na:1.8.0_40]
      at java.awt.Component.dispatchEventImpl(Unknown Source) [na:1.8.0_40]
      at java.awt.Container.dispatchEventImpl(Unknown Source) [na:1.8.0_40]
      at java.awt.Component.dispatchEvent(Unknown Source) [na:1.8.0_40]
      at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source) [na:1.8.0_40]
      at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source) [na:1.8.0_40]
      at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source) [na:1.8.0_40]
      at java.awt.Container.dispatchEventImpl(Unknown Source) [na:1.8.0_40]
      at java.awt.Window.dispatchEventImpl(Unknown Source) [na:1.8.0_40]
      at java.awt.Component.dispatchEvent(Unknown Source) [na:1.8.0_40]
      at java.awt.EventQueue.dispatchEventImpl(Unknown Source) [na:1.8.0_40]
      at java.awt.EventQueue.access$500(Unknown Source) [na:1.8.0_40]
      at java.awt.EventQueue$3.run(Unknown Source) [na:1.8.0_40]
      at java.awt.EventQueue$3.run(Unknown Source) [na:1.8.0_40]
      at java.security.AccessController.doPrivileged(Native Method) [na:1.8.0_40]
      at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source) [na:1.8.0_40]
      at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source) [na:1.8.0_40]
      at java.awt.EventQueue$4.run(Unknown Source) [na:1.8.0_40]
      at java.awt.EventQueue$4.run(Unknown Source) [na:1.8.0_40]
      at java.security.AccessController.doPrivileged(Native Method) [na:1.8.0_40]
      at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source) [na:1.8.0_40]
      at java.awt.EventQueue.dispatchEvent(Unknown Source) [na:1.8.0_40]
      at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source) [na:1.8.0_40]
      at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source) [na:1.8.0_40]
      at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source) [na:1.8.0_40]
      at java.awt.EventDispatchThread.pumpEvents(Unknown Source) [na:1.8.0_40]
      at java.awt.EventDispatchThread.pumpEvents(Unknown Source) [na:1.8.0_40]
      at java.awt.EventDispatchThread.run(Unknown Source) [na:1.8.0_40]

        Attachments

          Activity

          mason Mason Meyer (Inactive) created issue -
          mason Mason Meyer (Inactive) made changes -
          Field Original Value New Value
          Epic Link IGBF-439 [ 15497 ]
          mason Mason Meyer (Inactive) made changes -
          Rank Ranked higher
          mason Mason Meyer (Inactive) made changes -
          Rank Ranked higher
          dcnorris David Norris (Inactive) made changes -
          Comment [ This should be associated with https://jira.transvar.org/browse/IGBF-664 ]
          mason Mason Meyer (Inactive) made changes -
          Status Open [ 1 ] In Progress [ 3 ]
          dcnorris David Norris (Inactive) made changes -
          Status In Progress [ 3 ] Needs Testing [ 10002 ]
          mason Mason Meyer (Inactive) made changes -
          Status Needs Testing [ 10002 ] Testing In Progress [ 10003 ]
          mason Mason Meyer (Inactive) made changes -
          Assignee David Norris [ dcnorris ] Mason Meyer [ mason ]
          Hide
          mason Mason Meyer (Inactive) added a comment -

          Now it seems that an exception is generated when I choose "Save" from the file chooser (as compared to when I hit the "Save As" button). Also, I have reproduced the full frame/blank SVG image each time I generated an SVG file.

          Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
          at com.jidesoft.swing.FastGradientPainter.createGradientTile(Unknown Source)
          at com.jidesoft.swing.FastGradientPainter.drawGradient(Unknown Source)
          at com.jidesoft.swing.JideSwingUtilities.fillGradient(Unknown Source)
          at com.jidesoft.plaf.office2007.Office2007Painter.fillBackground(Unknown Source)
          at com.jidesoft.status.MemoryStatusBarItem$e_.paintComponent(Unknown Source)
          at javax.swing.JComponent.printComponent(Unknown Source)
          at javax.swing.JComponent.paint(Unknown Source)
          at javax.swing.JComponent.print(Unknown Source)
          at javax.swing.JComponent.paintChildren(Unknown Source)
          at javax.swing.JComponent.printChildren(Unknown Source)
          at javax.swing.JComponent.paint(Unknown Source)
          at javax.swing.JComponent.print(Unknown Source)
          at javax.swing.JComponent.paintChildren(Unknown Source)
          at javax.swing.JComponent.printChildren(Unknown Source)
          at javax.swing.JComponent.paint(Unknown Source)
          at javax.swing.JComponent.print(Unknown Source)
          at javax.swing.JComponent.paintChildren(Unknown Source)
          at javax.swing.JComponent.printChildren(Unknown Source)
          at javax.swing.JComponent.paint(Unknown Source)
          at javax.swing.JComponent.print(Unknown Source)
          at javax.swing.JComponent.paintChildren(Unknown Source)
          at javax.swing.JComponent.printChildren(Unknown Source)
          at javax.swing.JComponent.paint(Unknown Source)
          at javax.swing.JComponent.print(Unknown Source)
          at javax.swing.JComponent.paintChildren(Unknown Source)
          at javax.swing.JComponent.printChildren(Unknown Source)
          at javax.swing.JComponent.paint(Unknown Source)
          at javax.swing.JLayeredPane.paint(Unknown Source)
          at javax.swing.JComponent.print(Unknown Source)
          at javax.swing.JComponent.paintChildren(Unknown Source)
          at javax.swing.JComponent.printChildren(Unknown Source)
          at javax.swing.JComponent.paint(Unknown Source)
          at javax.swing.JComponent.print(Unknown Source)
          at java.awt.GraphicsCallback$PrintCallback.run(Unknown Source)
          at sun.awt.SunGraphicsCallback.runOneComponent(Unknown Source)
          at sun.awt.SunGraphicsCallback.runComponents(Unknown Source)
          at java.awt.Container.print(Unknown Source)
          at org.freehep.graphicsio.exportchooser.AbstractExportFileType.exportToFile(AbstractExportFileType.java:253)
          at org.freehep.graphicsio.exportchooser.AbstractExportFileType.exportToFile(AbstractExportFileType.java:282)
          at com.lorainelab.image.exporter.HeadLessExport.headlessComponentExport(HeadLessExport.java:72)
          at com.lorainelab.image.exporter.ExportDialog.completeSaveButtonAction(ExportDialog.java:455)
          at com.lorainelab.image.exporter.ExportDialog.lambda$showFileDialog$13(ExportDialog.java:351)
          at com.lorainelab.image.exporter.ExportDialog$$Lambda$320/881015904.accept(Unknown Source)
          at java.util.Optional.ifPresent(Unknown Source)
          at com.lorainelab.image.exporter.ExportDialog.showFileDialog(ExportDialog.java:343)
          at com.lorainelab.image.exporter.ExportDialog.saveAsButtonActionPerformed(ExportDialog.java:330)
          at com.lorainelab.image.exporter.ExportDialogGui.lambda$addMainPanel$1(ExportDialogGui.java:72)
          at com.lorainelab.image.exporter.ExportDialogGui$$Lambda$206/777213329.actionPerformed(Unknown Source)
          at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
          at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
          at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
          at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
          at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Source)
          at java.awt.Component.processMouseEvent(Unknown Source)
          at javax.swing.JComponent.processMouseEvent(Unknown Source)
          at java.awt.Component.processEvent(Unknown Source)
          at java.awt.Container.processEvent(Unknown Source)
          at java.awt.Component.dispatchEventImpl(Unknown Source)
          at java.awt.Container.dispatchEventImpl(Unknown Source)
          at java.awt.Component.dispatchEvent(Unknown Source)
          at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
          at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
          at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
          at java.awt.Container.dispatchEventImpl(Unknown Source)
          at java.awt.Window.dispatchEventImpl(Unknown Source)
          at java.awt.Component.dispatchEvent(Unknown Source)
          at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
          at java.awt.EventQueue.access$500(Unknown Source)
          at java.awt.EventQueue$3.run(Unknown Source)
          at java.awt.EventQueue$3.run(Unknown Source)
          at java.security.AccessController.doPrivileged(Native Method)
          at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
          at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
          at java.awt.EventQueue$4.run(Unknown Source)
          at java.awt.EventQueue$4.run(Unknown Source)
          at java.security.AccessController.doPrivileged(Native Method)
          at java.security.ProtectionDomain$1.doIntersectionPrivilege(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)

          Show
          mason Mason Meyer (Inactive) added a comment - Now it seems that an exception is generated when I choose "Save" from the file chooser (as compared to when I hit the "Save As" button). Also, I have reproduced the full frame/blank SVG image each time I generated an SVG file. Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException at com.jidesoft.swing.FastGradientPainter.createGradientTile(Unknown Source) at com.jidesoft.swing.FastGradientPainter.drawGradient(Unknown Source) at com.jidesoft.swing.JideSwingUtilities.fillGradient(Unknown Source) at com.jidesoft.plaf.office2007.Office2007Painter.fillBackground(Unknown Source) at com.jidesoft.status.MemoryStatusBarItem$e_.paintComponent(Unknown Source) at javax.swing.JComponent.printComponent(Unknown Source) at javax.swing.JComponent.paint(Unknown Source) at javax.swing.JComponent.print(Unknown Source) at javax.swing.JComponent.paintChildren(Unknown Source) at javax.swing.JComponent.printChildren(Unknown Source) at javax.swing.JComponent.paint(Unknown Source) at javax.swing.JComponent.print(Unknown Source) at javax.swing.JComponent.paintChildren(Unknown Source) at javax.swing.JComponent.printChildren(Unknown Source) at javax.swing.JComponent.paint(Unknown Source) at javax.swing.JComponent.print(Unknown Source) at javax.swing.JComponent.paintChildren(Unknown Source) at javax.swing.JComponent.printChildren(Unknown Source) at javax.swing.JComponent.paint(Unknown Source) at javax.swing.JComponent.print(Unknown Source) at javax.swing.JComponent.paintChildren(Unknown Source) at javax.swing.JComponent.printChildren(Unknown Source) at javax.swing.JComponent.paint(Unknown Source) at javax.swing.JComponent.print(Unknown Source) at javax.swing.JComponent.paintChildren(Unknown Source) at javax.swing.JComponent.printChildren(Unknown Source) at javax.swing.JComponent.paint(Unknown Source) at javax.swing.JLayeredPane.paint(Unknown Source) at javax.swing.JComponent.print(Unknown Source) at javax.swing.JComponent.paintChildren(Unknown Source) at javax.swing.JComponent.printChildren(Unknown Source) at javax.swing.JComponent.paint(Unknown Source) at javax.swing.JComponent.print(Unknown Source) at java.awt.GraphicsCallback$PrintCallback.run(Unknown Source) at sun.awt.SunGraphicsCallback.runOneComponent(Unknown Source) at sun.awt.SunGraphicsCallback.runComponents(Unknown Source) at java.awt.Container.print(Unknown Source) at org.freehep.graphicsio.exportchooser.AbstractExportFileType.exportToFile(AbstractExportFileType.java:253) at org.freehep.graphicsio.exportchooser.AbstractExportFileType.exportToFile(AbstractExportFileType.java:282) at com.lorainelab.image.exporter.HeadLessExport.headlessComponentExport(HeadLessExport.java:72) at com.lorainelab.image.exporter.ExportDialog.completeSaveButtonAction(ExportDialog.java:455) at com.lorainelab.image.exporter.ExportDialog.lambda$showFileDialog$13(ExportDialog.java:351) at com.lorainelab.image.exporter.ExportDialog$$Lambda$320/881015904.accept(Unknown Source) at java.util.Optional.ifPresent(Unknown Source) at com.lorainelab.image.exporter.ExportDialog.showFileDialog(ExportDialog.java:343) at com.lorainelab.image.exporter.ExportDialog.saveAsButtonActionPerformed(ExportDialog.java:330) at com.lorainelab.image.exporter.ExportDialogGui.lambda$addMainPanel$1(ExportDialogGui.java:72) at com.lorainelab.image.exporter.ExportDialogGui$$Lambda$206/777213329.actionPerformed(Unknown Source) at javax.swing.AbstractButton.fireActionPerformed(Unknown Source) at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source) at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source) at javax.swing.DefaultButtonModel.setPressed(Unknown Source) at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Source) at java.awt.Component.processMouseEvent(Unknown Source) at javax.swing.JComponent.processMouseEvent(Unknown Source) at java.awt.Component.processEvent(Unknown Source) at java.awt.Container.processEvent(Unknown Source) at java.awt.Component.dispatchEventImpl(Unknown Source) at java.awt.Container.dispatchEventImpl(Unknown Source) at java.awt.Component.dispatchEvent(Unknown Source) at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source) at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source) at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source) at java.awt.Container.dispatchEventImpl(Unknown Source) at java.awt.Window.dispatchEventImpl(Unknown Source) at java.awt.Component.dispatchEvent(Unknown Source) at java.awt.EventQueue.dispatchEventImpl(Unknown Source) at java.awt.EventQueue.access$500(Unknown Source) at java.awt.EventQueue$3.run(Unknown Source) at java.awt.EventQueue$3.run(Unknown Source) at java.security.AccessController.doPrivileged(Native Method) at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source) at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source) at java.awt.EventQueue$4.run(Unknown Source) at java.awt.EventQueue$4.run(Unknown Source) at java.security.AccessController.doPrivileged(Native Method) at java.security.ProtectionDomain$1.doIntersectionPrivilege(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)
          mason Mason Meyer (Inactive) made changes -
          Assignee Mason Meyer [ mason ] David Norris [ dcnorris ]
          mason Mason Meyer (Inactive) made changes -
          Status Testing In Progress [ 10003 ] Open [ 1 ]
          Hide
          mason Mason Meyer (Inactive) added a comment -

          In summary, it seems like SVG exporting may cause multiple issues that need to be looked into.

          Show
          mason Mason Meyer (Inactive) added a comment - In summary, it seems like SVG exporting may cause multiple issues that need to be looked into.
          mason Mason Meyer (Inactive) made changes -
          Status Open [ 1 ] Testing In Progress [ 10003 ]
          mason Mason Meyer (Inactive) made changes -
          Assignee David Norris [ dcnorris ] Mason Meyer [ mason ]
          Hide
          mason Mason Meyer (Inactive) added a comment -

          This issue was caused by the image preview not updating when changing to the SVG file type, but this has now been fixed.

          This issue is now resolved so it will be closed.

          Show
          mason Mason Meyer (Inactive) added a comment - This issue was caused by the image preview not updating when changing to the SVG file type, but this has now been fixed. This issue is now resolved so it will be closed.
          mason Mason Meyer (Inactive) made changes -
          Resolution Done [ 10000 ]
          Status Testing In Progress [ 10003 ] Closed [ 6 ]
          ann.loraine Ann Loraine made changes -
          Workflow Loraine Lab Workflow [ 16010 ] Fall 2019 Workflow Update [ 19527 ]
          ann.loraine Ann Loraine made changes -
          Workflow Fall 2019 Workflow Update [ 19527 ] Revised Fall 2019 Workflow Update [ 21644 ]

            People

            • Assignee:
              mason Mason Meyer (Inactive)
              Reporter:
              mason Mason Meyer (Inactive)
            • Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: