jMemorize - exception in JTable code: Fixed, but JFreeChart internal problem follows.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



This is because jMemorize overrides the JTable.columnMarginChanged that 
is fired from the JTable constructor, when the user -  derived class is 
not yet initialised. This can be easily fixed by initialising the table 
column model befor the table listeners are installed on it, I have 
comitted such patch. Unfortunately, this brings us to the second 
exception, related to the JFreeChart:

java.lang.ClassCastException: gnu/java/awt/peer/gtk/GdkGraphics
   at org.jfree.chart.ChartPanel.paintComponent (ChartPanel.java:905)
   at javax.swing.JComponent.paint (JComponent.java:1583)
   at javax.swing.JComponent.paintChildren (JComponent.java:1700)
   at javax.swing.JComponent.paint (JComponent.java:1585)
   at javax.swing.JComponent.paintChildren (JComponent.java:1700)
   at javax.swing.JSplitPane.paintChildren (JSplitPane.java:538)
   at javax.swing.JComponent.paint (JComponent.java:1585)
   at javax.swing.JComponent.paintChildren (JComponent.java:1700)
   at javax.swing.JComponent.paint (JComponent.java:1585)
   at javax.swing.JComponent.paintChildren (JComponent.java:1700)
   at javax.swing.JSplitPane.paintChildren (JSplitPane.java:538)
   at javax.swing.JComponent.paint (JComponent.java:1585)
   at javax.swing.JComponent.paintChildren (JComponent.java:1700)
   at javax.swing.JComponent.paint (JComponent.java:1585)
   at javax.swing.JComponent.paintChildren (JComponent.java:1700)
   at javax.swing.JComponent.paint (JComponent.java:1585)
   at javax.swing.JLayeredPane.paint (JLayeredPane.java:647)
   at javax.swing.JComponent.paintChildren (JComponent.java:1700)

Probably our JFreeChart experts could look at this.

Regards
Audrius.

Robert Schuster wrote:

>Hi,
>I added jMemorize[0] to the list of Free Swing apps. I just stumbled over the
>app and tried to run it but it fails with a NPE:
>
>java.lang.reflect.InvocationTargetException
>   at java.lang.reflect.Method.invokeNative (Native Method)
>   at java.lang.reflect.Method.invoke (Method.java:355)
>   at jamvm.java.lang.JarLauncher.main (JarLauncher.java:50)
>Caused by: java.lang.NullPointerException
>   at jmemorize.gui.swing.CardTable.columnMarginChanged (Unknown Source)
>   at javax.swing.table.DefaultTableColumnModel.fireColumnMarginChanged
>(DefaultTableColumnModel.java:493)
>   at javax.swing.table.DefaultTableColumnModel.setColumnMargin
>(DefaultTableColumnModel.java:171)
>   at javax.swing.JTable.setIntercellSpacing (JTable.java:2950)
>   at javax.swing.JTable.initializeLocalVars (JTable.java:1720)
>   at javax.swing.JTable.<init> (JTable.java:1664)
>   at javax.swing.JTable.<init> (JTable.java:1582)
>   at jmemorize.gui.swing.CardTable.<init> (Unknown Source)
>   at jmemorize.gui.swing.FindFrame.<init> (Unknown Source)
>   at jmemorize.gui.swing.MainFrame.<init> (Unknown Source)
>   at jmemorize.core.Main.run (Unknown Source)
>   at jmemorize.core.Main.main (Unknown Source)
>   at java.lang.reflect.Method.invokeNative (Native Method)
>   ...2 more
>
>Since there are some Swing hackers who frequently work on JTable this might be a
>low hanging fruit for them.
>
>cya
>Robert
>
>[0] - http://riad.de/jmemorize
>  
>



[Index of Archives]     [Linux Kernel]     [Linux Cryptography]     [Fedora]     [Fedora Directory]     [Red Hat Development]

  Powered by Linux