My favorites | Sign in
Project Home Downloads Wiki Issues Source
READ-ONLY: This project has been archived. For more information see this post.
Search
for
  Advanced search   Search tips   Subscriptions
Issue 43: table with bindList fails inside card layouts
1 person starred this issue and may be notified of changes. Back to list
Status:  Done
Owner:  ----
Closed:  Mar 2010


 
Reported by gpg...@gmail.com, Mar 21, 2010
What steps will reproduce the problem?
1. Create 2 different xml forms, each using a table. Add the bindList
attribute with the same property name and tablecolumn for each column to be
shown. Bind each to a different java class.
2. Create an xml form using a card layout with an instance of each java class.
3. When card layout form is displayed looks ok, but when switching to the
second form, you get the following stack trace:

Exception in thread "AWT-EventQueue-0" java.lang.IndexOutOfBoundsException:
Index: 4, Size: 4
        at java.util.ArrayList.RangeCheck(ArrayList.java:547)
        at java.util.ArrayList.get(ArrayList.java:322)
        at
org.jdesktop.swingbinding.JTableBinding.getColumnBinding(JTableBinding.java:455)
        at
org.jdesktop.swingbinding.JTableBinding$BindingTableModel.getColumnClass(JTableBinding.java:776)
        at javax.swing.JTable.getColumnClass(JTable.java:2666)
        at javax.swing.JTable.getCellRenderer(JTable.java:5670)
        at org.swixml.jsr.widgets.JTableEx.getCellRenderer(JTableEx.java:66)
        at javax.swing.plaf.synth.SynthTableUI.paintCell(SynthTableUI.java:621)
        at
javax.swing.plaf.synth.SynthTableUI.paintCells(SynthTableUI.java:519)
        at javax.swing.plaf.synth.SynthTableUI.paint(SynthTableUI.java:308)
        at javax.swing.plaf.synth.SynthTableUI.update(SynthTableUI.java:234)
        at javax.swing.JComponent.paintComponent(JComponent.java:752)
        at javax.swing.JComponent.paint(JComponent.java:1029)
        at javax.swing.JComponent.paintChildren(JComponent.java:862)
        at javax.swing.JComponent.paint(JComponent.java:1038)
        at javax.swing.JViewport.paint(JViewport.java:747)
        at javax.swing.JComponent.paintChildren(JComponent.java:862)
        at javax.swing.JComponent.paint(JComponent.java:1038)
        at javax.swing.JComponent.paintChildren(JComponent.java:862)
        at javax.swing.JComponent.paint(JComponent.java:1038)
        at javax.swing.JComponent.paintChildren(JComponent.java:862)
        at javax.swing.JComponent.paint(JComponent.java:1038)
        at org.jdesktop.swingx.JXPanel.paint(JXPanel.java:383)
        at javax.swing.JComponent.paintChildren(JComponent.java:862)
        at javax.swing.JComponent.paint(JComponent.java:1038)
        at javax.swing.JComponent.paintChildren(JComponent.java:862)
        at javax.swing.JComponent.paint(JComponent.java:1038)
        at javax.swing.JComponent.paintToOffscreen(JComponent.java:5124)
        at
javax.swing.RepaintManager$PaintManager.paintDoubleBuffered(RepaintManager.java:1479)
        at
javax.swing.RepaintManager$PaintManager.paint(RepaintManager.java:1410)
        at javax.swing.RepaintManager.paint(RepaintManager.java:1224)
        at javax.swing.JComponent._paintImmediately(JComponent.java:5072)
        at javax.swing.JComponent.paintImmediately(JComponent.java:4882)
        at
javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:785)
        at
javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:713)
        at
javax.swing.RepaintManager.seqPaintDirtyRegions(RepaintManager.java:693)
        at
javax.swing.SystemEventQueueUtilities$ComponentWorkRequest.run(SystemEventQueueUtilities.java:125)
        at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
        at java.awt.EventQueue.dispatchEvent(EventQueue.java:597)
        at
java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
        at
java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
        at
java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
        at
java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
        at
java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
        at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)

What version of the product are you using? On what operating system?
   swixml-2.5-20090909-distribution.zip os Windows

Please provide any additional information below.

you can add the bindClass attribute and the stack trace is not shown, but
the tablecolumn tag is ignored and taked column directly from the list
element class.
For the moment I'm removing the bindList and bindClass attibutes and
creating the table binding directly from java.
Mar 21, 2010
Project Member #1 bartolom...@gmail.com
this error has been already reported and solved . See  Issue 34  
https://code.google.com/p/swixml2/issues/detail?id=34

please use release 2.5.20091222 
Status: Done
Apr 4, 2010
#2 gpg...@gmail.com
ok. It works. Great tool.

Powered by Google Project Hosting