Results 1 to 2 of 2

Thread: An Exception that freaked me out

  1. #1

    Thread Starter
    Arabic Poster ComputerJy's Avatar
    Join Date
    Nov 2005
    Location
    Happily misplaced
    Posts
    2,513

    Exclamation An Exception that freaked me out

    During the execution of one of my programs I got multiple java exceptions (From java's code itself) when getting a value from a table cell.

    So I wrapped the DefaultTableModel into another class
    Code:
    import java.util.EmptyStackException;
    import java.util.Vector;
    import javax.swing.table.DefaultTableModel;
    
    public class TempTableModel extends DefaultTableModel
    {
    	private static final long serialVersionUID = -2618201765315591851L;
    
    	public TempTableModel(Object[][] data, Object[] columnNames)
    	{
    		super(data, columnNames);
    	}
    
    	public TempTableModel(Vector data, Vector columnNames)
    	{
    		super(data, columnNames);
    	}
    
    	public TempTableModel(Object[] columnNames, int rowCount)
    	{
    		super(columnNames, rowCount);
    	}
    
    	public TempTableModel(Vector columnNames, int rowCount)
    	{
    		super(columnNames, rowCount);
    	}
    
    	public TempTableModel(int rowCount, int columnCount)
    	{
    		super(rowCount, columnCount);
    	}
    
    	public TempTableModel()
    	{
    	}
    
    	@Override
    	public Object getValueAt(int row, int column)
    	{
    		try
    		{
    			return super.getValueAt(row, column);
    		}
    		catch (java.lang.ArrayIndexOutOfBoundsException ex)
    		{
    			throw ex;
    		}
    	}
    }
    I use Netbeans by the way, so I added a break point to the {throw ex} line and.. well, it stopped. Unfortunately I added a watch to the value {super.getValueAt(row, column)}.

    Thought I'd get an Exception but instead I got a value, and a correct value.
    I looked at the Thread pool and there were 3 threads running, only one of them (the current) had anything to do with the table's data.

    In the name of all cakes, what's going on
    "I'm not normally a praying man, but if you're up there, save me... Superman!" - Homer Simpson
    My Blog

  2. #2

    Thread Starter
    Arabic Poster ComputerJy's Avatar
    Join Date
    Nov 2005
    Location
    Happily misplaced
    Posts
    2,513

    Re: An Exception that freaked me out

    Sorry, I forgot to mention I'm using Ubuntu 9.04 beta, with java 1.5.0_18
    And when I tried my code on Windows Vista, there were no exceptions

    The Exception's stack trace:
    java.lang.ArrayIndexOutOfBoundsException: 0 >= 0
    at java.util.Vector.elementAt(Vector.java:432)
    at javax.swing.table.DefaultTableModel.getValueAt(DefaultTableModel.java:621)
    at javax.swing.JTable.getValueAt(JTable.java:1903)
    at javax.swing.JTable.prepareRenderer(JTable.java:3911)
    at javax.swing.plaf.basic.BasicTableUI.paintCell(BasicTableUI.java:2072)
    at javax.swing.plaf.basic.BasicTableUI.paintCells(BasicTableUI.java:1974)
    at javax.swing.plaf.basic.BasicTableUI.paint(BasicTableUI.java:1897)
    at javax.swing.plaf.ComponentUI.update(ComponentUI.java:142)
    at javax.swing.JComponent.paintComponent(JComponent.java:743)
    at javax.swing.JComponent.paint(JComponent.java:1006)
    at javax.swing.JComponent.paintWithOffscreenBuffer(JComponent.java:4972)
    at javax.swing.JComponent.paintDoubleBuffered(JComponent.java:4925)
    at javax.swing.JComponent._paintImmediately(JComponent.java:4868)
    at javax.swing.JComponent.paintImmediately(JComponent.java:4675)
    at javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:451)
    at javax.swing.SystemEventQueueUtilities$ComponentWorkRequest.run(SystemEventQueueUtilities.java:114)
    at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
    at java.awt.EventQueue.dispatchEvent(EventQueue.java:461)
    at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:242)
    at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:163)
    at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:153)
    at java.awt.Dialog$1.run(Dialog.java:535)
    at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
    at java.awt.EventQueue.dispatchEvent(EventQueue.java:461)
    at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:242)
    at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:163)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:157)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:149)
    at java.awt.EventDispatchThread.run(EventDispatchThread.java:110)
    "I'm not normally a praying man, but if you're up there, save me... Superman!" - Homer Simpson
    My Blog

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  



Click Here to Expand Forum to Full Width