Attempting to go to a Page Layout from a query with an empty result set causes a Java Exception. Is there a way in Wabit to display a more user friendly message and return to the Query?
Thanks for taking the time to report this problem!
We're about 1 week away from the next public release of Wabit, and I'd like to ensure a fix for this issue is included. Unfortunately, when I open the .rtf file you attached to your initial post, all I see is a blank document.
If you can reproduce this problem and copy all the text from the "details..." text area of the exception report and paste it into a reply here, it will help us diagnose and fix this problem. You should be able to copy the exception message by clicking inside the text area, then pressing Ctrl+A (select all) followed by Ctrl+C (copy).
This is a text version of the detail from the Exception Screen.
java.lang.NullPointerException
at java.util.Collections$UnmodifiableCollection.<init>(Unknown Source)
at java.util.Collections$UnmodifiableList.<init>(Unknown Source)
at java.util.Collections.unmodifiableList(Unknown Source)
at ca.sqlpower.wabit.report.resultset.Section.getSectionHeader(Section.java:125)
at ca.sqlpower.wabit.report.ResultSetRenderer.createResultSetLayout(ResultSetRenderer.java:816)
at ca.sqlpower.wabit.report.ResultSetRenderer.renderSuccess(ResultSetRenderer.java:577)
at ca.sqlpower.wabit.report.ResultSetRenderer.renderReportContent(ResultSetRenderer.java:521)
at ca.sqlpower.wabit.swingui.report.ContentBoxNode.paint(ContentBoxNode.java:144)
at edu.umd.cs.piccolo.PNode.fullPaint(Unknown Source)
at edu.umd.cs.piccolo.PNode.fullPaint(Unknown Source)
at edu.umd.cs.piccolo.PNode.fullPaint(Unknown Source)
at edu.umd.cs.piccolo.PCamera.paintCameraView(Unknown Source)
at edu.umd.cs.piccolo.PCamera.paint(Unknown Source)
at edu.umd.cs.piccolo.PNode.fullPaint(Unknown Source)
at edu.umd.cs.piccolo.PCamera.fullPaint(Unknown Source)
at edu.umd.cs.piccolo.PCanvas.paintComponent(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.paintToOffscreen(Unknown Source)
at javax.swing.RepaintManager$PaintManager.paintDoubleBuffered(Unknown Source)
at javax.swing.RepaintManager$PaintManager.paint(Unknown Source)
at javax.swing.RepaintManager.paint(Unknown Source)
at javax.swing.JComponent._paintImmediately(Unknown Source)
at javax.swing.JComponent.paintImmediately(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)