Details
-
Type:
Bug
-
Status:
Resolved
-
Priority:
Blocker
-
Resolution: Fixed
-
Affects Version/s: FEST-Swing 1.1
-
Fix Version/s: FEST-Swing 1.2a4
-
Component/s: Swing
-
Labels:None
-
Number of attachments :5
Description
We have some simple tests implemented with FEST and they work nicely on our Windows machines and produce the correct and expected results. Running the same tests with our CI (Hudson) on a Ubuntu 8.10 server makes them fail. We watched the execution by connecting to Xvfb via x11vnc and it seems that finding and controlling the widgets is not reliable. The test failed in different ways when running it several times!
Attachments
-
$i18n.getText("admin.common.words.hide")
- fest-swing-1.1-patched.jar
- 15/Sep/09 2:26 PM
- 619 kB
- Martin Bachmann
-
- META-INF/MANIFEST.MF 0.0 kB
- org/fest/.../annotation/RunsInEDT.class 0.4 kB
- org/fest/.../annotation/GUITestFinder.class 2 kB
- org/fest/.../ThreadSafeAction.class 0.4 kB
- org/fest/swing/annotation/GUITest.class 0.5 kB
- org/fest/.../RunsInCurrentThread.class 0.4 kB
- org/fest/swing/annotation/package.html 0.9 kB
- org/fest/swing/applet/AppletViewer.class 4 kB
- org/.../BasicAppletContext$EmptyAppletEnumeration.class 0.8 kB
- org/fest/.../applet/BasicAppletContext.class 3 kB
- org/fest/.../applet/BasicAppletStub.class 2 kB
- org/fest/.../applet/StatusDisplay.class 0.2 kB
- org/fest/swing/applet/package.html 0.9 kB
- org/fest/swing/awt/AWT$1.class 1.0 kB
- org/fest/swing/awt/AWT$2.class 0.6 kB
- org/fest/.../AWT$ThreadStateChecker.class 1 kB
- org/fest/swing/awt/AWT.class 7 kB
- org/fest/swing/awt/package.html 0.9 kB
- org/fest/.../cell/JListCellReader.class 0.3 kB
- org/fest/.../cell/JTableCellReader.class 0.4 kB
- org/fest/.../cell/JComboBoxCellReader.class 0.3 kB
- org/fest/.../cell/JTableCellWriter.class 0.5 kB
- org/fest/.../cell/JTreeCellReader.class 0.3 kB
- org/fest/swing/cell/package.html 1 kB
- org/fest/.../ComponentFoundCondition.class 2 kB
- org/fest/.../core/ComponentDragAndDrop.class 4 kB
- org/.../ComponentRequestFocusTask$1.class 0.7 kB
- org/fest/.../ComponentRequestFocusTask.class 0.7 kB
- org/fest/swing/core/Robot.class 2 kB
- org/fest/.../core/FinderDelegate$1.class 1 kB
$i18n.getText("admin.common.words.show")- fest-swing-1.1-patched.jar
- 15/Sep/09 2:26 PM
- 619 kB
- Martin Bachmann
-
- GuiActionRunner.java
- 15/Sep/09 2:25 PM
- 6 kB
- Martin Bachmann
-
- GuiQuery.java
- 15/Sep/09 2:25 PM
- 2 kB
- Martin Bachmann
-
- GuiTask.java
- 15/Sep/09 2:25 PM
- 2 kB
- Martin Bachmann
-
- fest-error.jpg
- 60 kB
- 13/Mar/09 4:47 AM
Activity
Now some Observations:
-the lookup of components using exactly the same dialog works in an isolated test case, but fails when the whole application is tested on that machine
-the components are subclasses of swing widgets
-the point where FEST fails seems to depend on the complexity of the GUI and the machine setup (on the virtual box the simple ones work, the complex ones fail; on our CI even the simple ones fail more or less ramdomly)
-the problems appear on both, the regular X11 Display (Xorg) and Xvfb
Hi,
we also have the same problem with our FEST tests.
They work proper on our windows machines but they fail with an ComponentLookupException on our Linux machines (SuSE 10.3 Kernel 2.6.22.19).
We start our tests from eclipse.
Stacktrace:
org.fest.swing.exception.ComponentLookupException: Unable to find component using matcher
org.fest.swing.core.NameMatcher[name='mainTabbedPane',
type=javax.swing.JTabbedPane, requireShowing=true].
Component hierarchy:
de.idos.gui.MainFrame[name='frame0', title='Do 12.03.2009 - Dispatching - IDOS authomatic test', enabled=true, visible=false, showing=false]
javax.swing.JRootPane[]
javax.swing.JPanel[name='null.glassPane']
javax.swing.JLayeredPane[]
javax.swing.JPanel[name='null.contentPane']
de.idos.gui.StatusBar[name=null]
javax.swing.JLabel[name=null, text=' shptest', enabled=true, visible=true, showing=false]
javax.swing.JLabel[name=null, text=' SHP', enabled=true, visible=true, showing=false]
javax.swing.JLabel[name=null, text=' ORCL', enabled=true, visible=true, showing=false]
javax.swing.JLabel[name=null, text=' ', enabled=true, visible=true, showing=false]
javax.swing.JLabel[name=null, text=' ', enabled=true, visible=true, showing=false]
javax.swing.JPanel[name=null]
de.idos.gui.MainTabbedPane[name='mainTabbedPane', selectedTabIndex=4, selectedTabTitle='Prognosen', tabCount=6, tabTitles=['Deals', 'Kraftwerke', 'Hubausgleich', 'Abstimmung',
'Prognosen', 'eCMS'], enabled=true, visible=true, showing=false]
javax.swing.JPanel[name=null]
javax.swing.JSplitPane[,0,33,1255x783,invalid,layout=javax.swing.plaf.basic.BasicSplitPaneUI$BasicHorizontalLayoutManager,alignmentX=0.0,alignmentY=0.0,border=javax.swing.plaf.basic.BasicBorders$SplitPaneBorder@6c6fa0b5,flags=201326920,maximumSize=,minimumSize=,preferredSize=,continuousLayout=true,dividerSize=12,lastDividerLocation=-1,oneTouchExpandable=true,orientation=VERTICAL_SPLIT]
javax.swing.plaf.metal.MetalSplitPaneDivider[,1,690,1253x12,layout=javax.swing.plaf.basic.BasicSplitPaneDivider$DividerLayout]
javax.swing.plaf.metal.MetalSplitPaneDivider$1[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalSplitPaneDivider$2[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.JSplitPane[,1,1,1253x689,invalid,layout=javax.swing.plaf.basic.BasicSplitPaneUI$BasicHorizontalLayoutManager,alignmentX=0.0,alignmentY=0.0,border=javax.swing.plaf.basic.BasicBorders$SplitPaneBorder@6c6fa0b5,flags=201326920,maximumSize=,minimumSize=,preferredSize=,continuousLayout=true,dividerSize=12,lastDividerLocation=-1,oneTouchExpandable=true,orientation=VERTICAL_SPLIT]
javax.swing.plaf.metal.MetalSplitPaneDivider[,1,370,1251x12,layout=javax.swing.plaf.basic.BasicSplitPaneDivider$DividerLayout]
javax.swing.plaf.metal.MetalSplitPaneDivider$1[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalSplitPaneDivider$2[name=null, text='', enabled=true, visible=true, showing=false]
de.enbw.ev.gui.PnDealList[name=null, enabled=true, visible=true, showing=false]
javax.swing.JViewport[,201,32,1048x320,layout=javax.swing.ViewportLayout,alignmentX=0.0,alignmentY=0.0,border=,flags=25165832,maximumSize=,minimumSize=,preferredSize=,isViewSizeSet=true,lastPaintPosition=java.awt.Point[x=0,y=0],scrollUnderway=false]
javax.swing.JPanel[name=null]
javax.swing.JTable[name='allDealTable',rowCount=0, columnCount=24, enabled=true, visible=true, showing=false]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
javax.swing.JScrollPane$ScrollBar[name=null, value=0, blockIncrement=10, minimum=0, maximum=320, enabled=true, visible=false, showing=false]
javax.swing.plaf.metal.MetalScrollButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalScrollButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.JScrollPane$ScrollBar[name=null, value=0, blockIncrement=10, minimum=0, maximum=1048, enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalScrollButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalScrollButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.JPanel[name=null]
javax.swing.table.JTableHeader[,0,0,200x15,alignmentX=0.0,alignmentY=0.0,border=,flags=16777544,maximumSize=,minimumSize=,preferredSize=,draggedDistance=0,reorderingAllowed=false,resizingAllowed=true,updateTableInRealTime=true]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
javax.swing.JTable[name=null, rowCount=1, columnCount=4, enabled=true, visible=true, showing=false]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
javax.swing.JViewport[,201,1,1048x31,layout=javax.swing.ViewportLayout,alignmentX=0.0,alignmentY=0.0,border=,flags=25165832,maximumSize=,minimumSize=,preferredSize=,isViewSizeSet=true,lastPaintPosition=java.awt.Point[x=0,y=0],scrollUnderway=false]
javax.swing.JPanel[name=null]
javax.swing.table.JTableHeader[,0,0,1048x15,alignmentX=0.0,alignmentY=0.0,border=,flags=16777544,maximumSize=,minimumSize=,preferredSize=,draggedDistance=0,reorderingAllowed=false,resizingAllowed=true,updateTableInRealTime=true]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
javax.swing.JTable[name=null, rowCount=1,
columnCount=24, enabled=true, visible=true, showing=false]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
javax.swing.JViewport[,1,32,200x320,layout=javax.swing.ViewportLayout,alignmentX=0.0,alignmentY=0.0,border=,flags=25165832,maximumSize=,minimumSize=,preferredSize=,isViewSizeSet=true,lastPaintPosition=java.awt.Point[x=0,y=0],scrollUnderway=false]
javax.swing.JPanel[name=null]
javax.swing.JTable[name='allDealTableHeader',
rowCount=0, columnCount=4, enabled=true, visible=true, showing=false]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
de.idos.gui.MainTabbedPane[name='IchHabNochKeinenNamen',
selectedTabIndex=0, selectedTabTitle='Details', tabCount=5,
tabTitles=['Details', 'Geschäftshistorie', 'Suchen', 'Dispatcher-Info',
'Status Fahrplanversendung'], enabled=true, visible=true, showing=false]
javax.swing.JPanel[name=null]
javax.swing.JPanel[name=null]
de.enbw.share.gui.qplist.PnMultiQuarter[name=null, enabled=true,
visible=true, showing=false]
javax.swing.JViewport[,200,16,1044x96,layout=javax.swing.ViewportLayout,alignmentX=0.0,alignmentY=0.0,border=,flags=25165832,maximumSize=,minimumSize=,preferredSize=,isViewSizeSet=true,lastPaintPosition=java.awt.Point[x=0,y=0],scrollUnderway=false]
javax.swing.JPanel[name=null]
de.idos.gui.CopyPasteTable[name='IchHabNochKeinenNamen', rowCount=6,
columnCount=24, enabled=true, visible=true, showing=false]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
javax.swing.JScrollPane$ScrollBar[name=null, value=0, blockIncrement=10, minimum=0, maximum=96, enabled=true,
visible=false, showing=false]
javax.swing.plaf.metal.MetalScrollButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalScrollButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.JScrollPane$ScrollBar[name=null, value=0, blockIncrement=10, minimum=0, maximum=1044, enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalScrollButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalScrollButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.JPanel[name=null]
javax.swing.table.JTableHeader[,0,0,199x15,alignmentX=0.0,alignmentY=0.0,border=,flags=16777544,maximumSize=,minimumSize=,preferredSize=,draggedDistance=0,reorderingAllowed=false,resizingAllowed=true,updateTableInRealTime=true]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
javax.swing.JViewport[,200,1,1044x15,layout=javax.swing.ViewportLayout,alignmentX=0.0,alignmentY=0.0,border=,flags=25165832,maximumSize=,minimumSize=,preferredSize=,isViewSizeSet=true,lastPaintPosition=java.awt.Point[x=0,y=0],scrollUnderway=false]
javax.swing.JPanel[name=null]
javax.swing.table.JTableHeader[,0,0,1044x15,alignmentX=0.0,alignmentY=0.0,border=,flags=16777544,maximumSize=,minimumSize=,preferredSize=,draggedDistance=0,reorderingAllowed=false,resizingAllowed=true,updateTableInRealTime=true]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
javax.swing.JViewport[,1,16,199x96,layout=javax.swing.ViewportLayout,alignmentX=0.0,alignmentY=0.0,border=,flags=25165832,maximumSize=,minimumSize=,preferredSize=,isViewSizeSet=true,lastPaintPosition=java.awt.Point[x=0,y=0],scrollUnderway=false]
javax.swing.JPanel[name=null]
de.idos.gui.IdosTable[name='IchHabNochKeinenNamen.RowHeader', rowCount=6, columnCount=3, enabled=true, visible=true, showing=false]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
de.idos.form.FormularPanel[name=null]
javax.swing.JPanel[name=null]
javax.swing.JLabel[name=null, text='Kurzname ', enabled=true, visible=true, showing=false]
de.idos.form.LengthField[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.JLabel[name=null, text='Name ', enabled=true, visible=true, showing=false]
de.idos.form.LengthField[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.JLabel[name=null, text='Typ ', enabled=true, visible=true, showing=false]
de.idos.form.DBComboBox[name=null, selectedItem=null, contents=[], editable=false, enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalComboBoxButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
javax.swing.plaf.basic.BasicComboBoxRenderer$UIResource[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.JLabel[name=null, text='Status ', enabled=true, visible=true, showing=false]
de.idos.form.DBComboBox[name=null, selectedItem=null, contents=[], editable=false, enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalComboBoxButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
javax.swing.plaf.basic.BasicComboBoxRenderer$UIResource[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.JLabel[name=null, text='Grenzkosten(EUR/MWh) ', enabled=true, visible=true, showing=false]
de.idos.form.LengthField[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.JLabel[name=null, text=' ', enabled=true, visible=true, showing=false]
de.idos.form.DBLabel[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.JPanel[name=null]
javax.swing.JLabel[name=null, text='Hub ', enabled=true, visible=true, showing=false]
de.idos.form.DBComboBox[name=null, selectedItem=null, contents=[], editable=false,
enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalComboBoxButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
javax.swing.plaf.basic.BasicComboBoxRenderer$UIResource[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.JLabel[name=null, text='Counterpart ', enabled=true, visible=true, showing=false]
de.idos.form.DBComboBox[name=null, selectedItem=null, contents=[], editable=false,
enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalComboBoxButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
javax.swing.plaf.basic.BasicComboBoxRenderer$UIResource[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.JLabel[name=null, text='Cp-Händler ', enabled=true, visible=true, showing=false]
de.idos.form.DBComboBox[name=null,
selectedItem=null, contents=[], editable=false, enabled=true, visible=true, showing=false]
org.fest.swing.exception.ComponentLookupException: Unable to find component using matcher
org.fest.swing.core.NameMatcher[name='mainTabbedPane',
type=javax.swing.JTabbedPane, requireShowing=true].
Component hierarchy:
de.idos.gui.MainFrame[name='frame0', title='Do 12.03.2009 - Dispatching - IDOS authomatic test', enabled=true, visible=false, showing=false]
javax.swing.JRootPane[]
javax.swing.JPanel[name='null.glassPane']
javax.swing.JLayeredPane[]
javax.swing.JPanel[name='null.contentPane']
de.idos.gui.StatusBar[name=null]
javax.swing.JLabel[name=null, text=' shptest', enabled=true, visible=true, showing=false]
javax.swing.JLabel[name=null, text=' SHP', enabled=true, visible=true, showing=false]
javax.swing.JLabel[name=null, text=' ORCL', enabled=true, visible=true, showing=false]
javax.swing.JLabel[name=null, text=' ', enabled=true, visible=true, showing=false]
javax.swing.JLabel[name=null, text=' ', enabled=true, visible=true, showing=false]
javax.swing.JPanel[name=null]
de.idos.gui.MainTabbedPane[name='mainTabbedPane', selectedTabIndex=4, selectedTabTitle='Prognosen', tabCount=6, tabTitles=['Deals', 'Kraftwerke', 'Hubausgleich', 'Abstimmung',
'Prognosen', 'eCMS'], enabled=true, visible=true, showing=false]
javax.swing.JPanel[name=null]
javax.swing.JSplitPane[,0,33,1255x783,invalid,layout=javax.swing.plaf.basic.BasicSplitPaneUI$BasicHorizontalLayoutManager,alignmentX=0.0,alignmentY=0.0,border=javax.swing.plaf.basic.BasicBorders$SplitPaneBorder@6c6fa0b5,flags=201326920,maximumSize=,minimumSize=,preferredSize=,continuousLayout=true,dividerSize=12,lastDividerLocation=-1,oneTouchExpandable=true,orientation=VERTICAL_SPLIT]
javax.swing.plaf.metal.MetalSplitPaneDivider[,1,690,1253x12,layout=javax.swing.plaf.basic.BasicSplitPaneDivider$DividerLayout]
javax.swing.plaf.metal.MetalSplitPaneDivider$1[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalSplitPaneDivider$2[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.JSplitPane[,1,1,1253x689,invalid,layout=javax.swing.plaf.basic.BasicSplitPaneUI$BasicHorizontalLayoutManager,alignmentX=0.0,alignmentY=0.0,border=javax.swing.plaf.basic.BasicBorders$SplitPaneBorder@6c6fa0b5,flags=201326920,maximumSize=,minimumSize=,preferredSize=,continuousLayout=true,dividerSize=12,lastDividerLocation=-1,oneTouchExpandable=true,orientation=VERTICAL_SPLIT]
javax.swing.plaf.metal.MetalSplitPaneDivider[,1,370,1251x12,layout=javax.swing.plaf.basic.BasicSplitPaneDivider$DividerLayout]
javax.swing.plaf.metal.MetalSplitPaneDivider$1[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalSplitPaneDivider$2[name=null, text='', enabled=true, visible=true, showing=false]
de.enbw.ev.gui.PnDealList[name=null, enabled=true, visible=true, showing=false]
javax.swing.JViewport[,201,32,1048x320,layout=javax.swing.ViewportLayout,alignmentX=0.0,alignmentY=0.0,border=,flags=25165832,maximumSize=,minimumSize=,preferredSize=,isViewSizeSet=true,lastPaintPosition=java.awt.Point[x=0,y=0],scrollUnderway=false]
javax.swing.JPanel[name=null]
javax.swing.JTable[name='allDealTable',rowCount=0, columnCount=24, enabled=true, visible=true, showing=false]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
javax.swing.JScrollPane$ScrollBar[name=null, value=0, blockIncrement=10, minimum=0, maximum=320, enabled=true, visible=false, showing=false]
javax.swing.plaf.metal.MetalScrollButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalScrollButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.JScrollPane$ScrollBar[name=null, value=0, blockIncrement=10, minimum=0, maximum=1048, enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalScrollButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalScrollButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.JPanel[name=null]
javax.swing.table.JTableHeader[,0,0,200x15,alignmentX=0.0,alignmentY=0.0,border=,flags=16777544,maximumSize=,minimumSize=,preferredSize=,draggedDistance=0,reorderingAllowed=false,resizingAllowed=true,updateTableInRealTime=true]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
javax.swing.JTable[name=null, rowCount=1, columnCount=4, enabled=true, visible=true, showing=false]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
javax.swing.JViewport[,201,1,1048x31,layout=javax.swing.ViewportLayout,alignmentX=0.0,alignmentY=0.0,border=,flags=25165832,maximumSize=,minimumSize=,preferredSize=,isViewSizeSet=true,lastPaintPosition=java.awt.Point[x=0,y=0],scrollUnderway=false]
javax.swing.JPanel[name=null]
javax.swing.table.JTableHeader[,0,0,1048x15,alignmentX=0.0,alignmentY=0.0,border=,flags=16777544,maximumSize=,minimumSize=,preferredSize=,draggedDistance=0,reorderingAllowed=false,resizingAllowed=true,updateTableInRealTime=true]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
javax.swing.JTable[name=null, rowCount=1,
columnCount=24, enabled=true, visible=true, showing=false]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
javax.swing.JViewport[,1,32,200x320,layout=javax.swing.ViewportLayout,alignmentX=0.0,alignmentY=0.0,border=,flags=25165832,maximumSize=,minimumSize=,preferredSize=,isViewSizeSet=true,lastPaintPosition=java.awt.Point[x=0,y=0],scrollUnderway=false]
javax.swing.JPanel[name=null]
javax.swing.JTable[name='allDealTableHeader',
rowCount=0, columnCount=4, enabled=true, visible=true, showing=false]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
de.idos.gui.MainTabbedPane[name='IchHabNochKeinenNamen',
selectedTabIndex=0, selectedTabTitle='Details', tabCount=5,
tabTitles=['Details', 'Geschäftshistorie', 'Suchen', 'Dispatcher-Info',
'Status Fahrplanversendung'], enabled=true, visible=true, showing=false]
javax.swing.JPanel[name=null]
javax.swing.JPanel[name=null]
de.enbw.share.gui.qplist.PnMultiQuarter[name=null, enabled=true,
visible=true, showing=false]
javax.swing.JViewport[,200,16,1044x96,layout=javax.swing.ViewportLayout,alignmentX=0.0,alignmentY=0.0,border=,flags=25165832,maximumSize=,minimumSize=,preferredSize=,isViewSizeSet=true,lastPaintPosition=java.awt.Point[x=0,y=0],scrollUnderway=false]
javax.swing.JPanel[name=null]
de.idos.gui.CopyPasteTable[name='IchHabNochKeinenNamen', rowCount=6,
columnCount=24, enabled=true, visible=true, showing=false]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
javax.swing.JScrollPane$ScrollBar[name=null, value=0, blockIncrement=10, minimum=0, maximum=96, enabled=true,
visible=false, showing=false]
javax.swing.plaf.metal.MetalScrollButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalScrollButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.JScrollPane$ScrollBar[name=null, value=0, blockIncrement=10, minimum=0, maximum=1044, enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalScrollButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalScrollButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.JPanel[name=null]
javax.swing.table.JTableHeader[,0,0,199x15,alignmentX=0.0,alignmentY=0.0,border=,flags=16777544,maximumSize=,minimumSize=,preferredSize=,draggedDistance=0,reorderingAllowed=false,resizingAllowed=true,updateTableInRealTime=true]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
javax.swing.JViewport[,200,1,1044x15,layout=javax.swing.ViewportLayout,alignmentX=0.0,alignmentY=0.0,border=,flags=25165832,maximumSize=,minimumSize=,preferredSize=,isViewSizeSet=true,lastPaintPosition=java.awt.Point[x=0,y=0],scrollUnderway=false]
javax.swing.JPanel[name=null]
javax.swing.table.JTableHeader[,0,0,1044x15,alignmentX=0.0,alignmentY=0.0,border=,flags=16777544,maximumSize=,minimumSize=,preferredSize=,draggedDistance=0,reorderingAllowed=false,resizingAllowed=true,updateTableInRealTime=true]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
javax.swing.JViewport[,1,16,199x96,layout=javax.swing.ViewportLayout,alignmentX=0.0,alignmentY=0.0,border=,flags=25165832,maximumSize=,minimumSize=,preferredSize=,isViewSizeSet=true,lastPaintPosition=java.awt.Point[x=0,y=0],scrollUnderway=false]
javax.swing.JPanel[name=null]
de.idos.gui.IdosTable[name='IchHabNochKeinenNamen.RowHeader', rowCount=6, columnCount=3, enabled=true, visible=true, showing=false]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
de.idos.form.FormularPanel[name=null]
javax.swing.JPanel[name=null]
javax.swing.JLabel[name=null, text='Kurzname ', enabled=true, visible=true, showing=false]
de.idos.form.LengthField[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.JLabel[name=null, text='Name ', enabled=true, visible=true, showing=false]
de.idos.form.LengthField[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.JLabel[name=null, text='Typ ', enabled=true, visible=true, showing=false]
de.idos.form.DBComboBox[name=null, selectedItem=null, contents=[], editable=false, enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalComboBoxButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
javax.swing.plaf.basic.BasicComboBoxRenderer$UIResource[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.JLabel[name=null, text='Status ', enabled=true, visible=true, showing=false]
de.idos.form.DBComboBox[name=null, selectedItem=null, contents=[], editable=false, enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalComboBoxButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
javax.swing.plaf.basic.BasicComboBoxRenderer$UIResource[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.JLabel[name=null, text='Grenzkosten(EUR/MWh) ', enabled=true, visible=true, showing=false]
de.idos.form.LengthField[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.JLabel[name=null, text=' ', enabled=true, visible=true, showing=false]
de.idos.form.DBLabel[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.JPanel[name=null]
javax.swing.JLabel[name=null, text='Hub ', enabled=true, visible=true, showing=false]
de.idos.form.DBComboBox[name=null, selectedItem=null, contents=[], editable=false,
enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalComboBoxButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
javax.swing.plaf.basic.BasicComboBoxRenderer$UIResource[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.JLabel[name=null, text='Counterpart ', enabled=true, visible=true, showing=false]
de.idos.form.DBComboBox[name=null, selectedItem=null, contents=[], editable=false,
enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalComboBoxButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
javax.swing.plaf.basic.BasicComboBoxRenderer$UIResource[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.JLabel[name=null, text='Cp-Händler ', enabled=true, visible=true, showing=false]
de.idos.form.DBComboBox[name=null,
selectedItem=null, contents=[], editable=false, enabled=true, visible=true, showing=false]
Mihael,
Thanks for filing this bug. I'll be working on it today. It is a real puzzle! I'll keep you updated with my progress.
Julia,
I looked at the stack trace you provided. I think in your case it is not a bug in FEST. Please take a look at the conditions specified in the NameMatcher. It is looking for a JTabbedPane with name "mainTabbedPane" that is showing on the screen.
In the component hierarchy, we can see the the dialog hosting a matching tab is not showing, thus failing the lookup.
Comments/suggestions are always welcome.
Regards,
-Alex
PS: As I mentioned, I'll be working on this bug today. Since I don't have an environment like yours to make sure that the bug is 100% fixed, I'll be releasing SNAPSHOTS. I'll let you know when they are available. Please give them a try
Thank you for your quick response.
Here is an new stack trace where the component/tabbed pane is showing and nothing was found.
I made also an screen shot from our application. the tab "Hubausgleich" is the one who wasn't found.
org.fest.swing.exception.ComponentLookupException: Unable to find component using matcher org.fest.swing.core.NameMatcher[name='hubBalanceTabbedPane', type=javax.swing.JTabbedPane, requireShowing=true].
Component hierarchy:
de.idos.gui.MainFrame[name='frame1', title='Sa 14.03.2009 - '' - IDOS authomatic test', enabled=true, visible=true, showing=true]
javax.swing.JRootPane[]
javax.swing.JPanel[name='null.glassPane']
javax.swing.JLayeredPane[]
javax.swing.JPanel[name='null.contentPane']
de.idos.gui.StatusBar[name=null]
javax.swing.JLabel[name=null, text=' fpm', enabled=true, visible=true, showing=true]
javax.swing.JLabel[name=null, text=' FPM', enabled=true, visible=true, showing=true]
javax.swing.JLabel[name=null, text=' ORCL', enabled=true, visible=true, showing=true]
javax.swing.JLabel[name=null, text=' ', enabled=true, visible=true, showing=true]
javax.swing.JLabel[name=null, text=' ', enabled=true, visible=true, showing=true]
javax.swing.JPanel[name=null]
de.idos.gui.MainTabbedPane[name='mainTabbedPane', selectedTabIndex=2, selectedTabTitle='Hubausgleich', tabCount=6, tabTitles=['Deals', 'Kraftwerke', 'Hubausgleich', 'Abstimmung', 'Prognosen', 'eCMS'], enabled=true, visible=true, showing=true]
javax.swing.JPanel[name=null]
javax.swing.JSplitPane[,0,33,1259x823,layout=javax.swing.plaf.basic.BasicSplitPaneUI$BasicHorizontalLayoutManager,alignmentX=0.0,alignmentY=0.0,border=javax.swing.plaf.basic.BasicBorders$SplitPaneBorder@7a4f8595,flags=201326920,maximumSize=,minimumSize=,preferredSize=,continuousLayout=true,dividerSize=12,lastDividerLocation=-1,oneTouchExpandable=true,orientation=VERTICAL_SPLIT]
javax.swing.plaf.metal.MetalSplitPaneDivider[,1,690,1257x12,layout=javax.swing.plaf.basic.BasicSplitPaneDivider$DividerLayout]
javax.swing.plaf.metal.MetalSplitPaneDivider$1[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalSplitPaneDivider$2[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.JSplitPane[,1,1,1257x689,layout=javax.swing.plaf.basic.BasicSplitPaneUI$BasicHorizontalLayoutManager,alignmentX=0.0,alignmentY=0.0,border=javax.swing.plaf.basic.BasicBorders$SplitPaneBorder@7a4f8595,flags=201326920,maximumSize=,minimumSize=,preferredSize=,continuousLayout=true,dividerSize=12,lastDividerLocation=-1,oneTouchExpandable=true,orientation=VERTICAL_SPLIT]
javax.swing.plaf.metal.MetalSplitPaneDivider[,1,370,1255x12,layout=javax.swing.plaf.basic.BasicSplitPaneDivider$DividerLayout]
javax.swing.plaf.metal.MetalSplitPaneDivider$1[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalSplitPaneDivider$2[name=null, text='', enabled=true, visible=true, showing=false]
de.enbw.ev.gui.PnDealList[name=null, enabled=true, visible=true, showing=false]
javax.swing.JViewport[,201,32,1052x320,layout=javax.swing.ViewportLayout,alignmentX=0.0,alignmentY=0.0,border=,flags=25165832,maximumSize=,minimumSize=,preferredSize=,isViewSizeSet=true,lastPaintPosition=java.awt.Point[x=0,y=0],scrollUnderway=false]
javax.swing.JPanel[name=null]
javax.swing.JTable[name='allDealTable', rowCount=4, columnCount=24, enabled=true, visible=true, showing=false]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
javax.swing.JScrollPane$ScrollBar[name=null, value=0, blockIncrement=10, minimum=0, maximum=320, enabled=true, visible=false, showing=false]
javax.swing.plaf.metal.MetalScrollButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalScrollButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.JScrollPane$ScrollBar[name=null, value=0, blockIncrement=10, minimum=0, maximum=1052, enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalScrollButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalScrollButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.JPanel[name=null]
javax.swing.table.JTableHeader[,0,0,200x15,alignmentX=0.0,alignmentY=0.0,border=,flags=16777544,maximumSize=,minimumSize=,preferredSize=,draggedDistance=0,reorderingAllowed=false,resizingAllowed=true,updateTableInRealTime=true]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
javax.swing.JTable[name=null, rowCount=1, columnCount=4, enabled=true, visible=true, showing=false]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
javax.swing.JViewport[,201,1,1052x31,layout=javax.swing.ViewportLayout,alignmentX=0.0,alignmentY=0.0,border=,flags=25165832,maximumSize=,minimumSize=,preferredSize=,isViewSizeSet=true,lastPaintPosition=java.awt.Point[x=0,y=0],scrollUnderway=false]
javax.swing.JPanel[name=null]
javax.swing.table.JTableHeader[,0,0,1052x15,alignmentX=0.0,alignmentY=0.0,border=,flags=16777544,maximumSize=,minimumSize=,preferredSize=,draggedDistance=0,reorderingAllowed=false,resizingAllowed=true,updateTableInRealTime=true]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
javax.swing.JTable[name=null, rowCount=1, columnCount=24, enabled=true, visible=true, showing=false]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
javax.swing.JViewport[,1,32,200x320,layout=javax.swing.ViewportLayout,alignmentX=0.0,alignmentY=0.0,border=,flags=25165832,maximumSize=,minimumSize=,preferredSize=,isViewSizeSet=true,lastPaintPosition=java.awt.Point[x=0,y=0],scrollUnderway=false]
javax.swing.JPanel[name=null]
javax.swing.JTable[name='allDealTableHeader', rowCount=4, columnCount=4, enabled=true, visible=true, showing=false]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
de.idos.gui.MainTabbedPane[name='IchHabNochKeinenNamen', selectedTabIndex=0, selectedTabTitle='Details', tabCount=5, tabTitles=['Details', 'Geschäftshistorie', 'Suchen', 'Dispatcher-Info', 'Status Fahrplanversendung'], enabled=true, visible=true, showing=false]
javax.swing.JPanel[name=null]
javax.swing.JPanel[name=null]
de.enbw.share.gui.qplist.PnMultiQuarter[name=null, enabled=true, visible=true, showing=false]
javax.swing.JViewport[,200,16,1048x96,layout=javax.swing.ViewportLayout,alignmentX=0.0,alignmentY=0.0,border=,flags=25165832,maximumSize=,minimumSize=,preferredSize=,isViewSizeSet=true,lastPaintPosition=java.awt.Point[x=0,y=0],scrollUnderway=false]
javax.swing.JPanel[name=null]
de.idos.gui.CopyPasteTable[name='IchHabNochKeinenNamen', rowCount=6, columnCount=24, enabled=true, visible=true, showing=false]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
javax.swing.JScrollPane$ScrollBar[name=null, value=0, blockIncrement=10, minimum=0, maximum=96, enabled=true, visible=false, showing=false]
javax.swing.plaf.metal.MetalScrollButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalScrollButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.JScrollPane$ScrollBar[name=null, value=0, blockIncrement=10, minimum=0, maximum=1048, enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalScrollButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalScrollButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.JPanel[name=null]
javax.swing.table.JTableHeader[,0,0,199x15,alignmentX=0.0,alignmentY=0.0,border=,flags=16777544,maximumSize=,minimumSize=,preferredSize=,draggedDistance=0,reorderingAllowed=false,resizingAllowed=true,updateTableInRealTime=true]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
javax.swing.JViewport[,200,1,1048x15,layout=javax.swing.ViewportLayout,alignmentX=0.0,alignmentY=0.0,border=,flags=25165832,maximumSize=,minimumSize=,preferredSize=,isViewSizeSet=true,lastPaintPosition=java.awt.Point[x=0,y=0],scrollUnderway=false]
javax.swing.JPanel[name=null]
javax.swing.table.JTableHeader[,0,0,1048x15,alignmentX=0.0,alignmentY=0.0,border=,flags=16777544,maximumSize=,minimumSize=,preferredSize=,draggedDistance=0,reorderingAllowed=false,resizingAllowed=true,updateTableInRealTime=true]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
javax.swing.JViewport[,1,16,199x96,layout=javax.swing.ViewportLayout,alignmentX=0.0,alignmentY=0.0,border=,flags=25165832,maximumSize=,minimumSize=,preferredSize=,isViewSizeSet=true,lastPaintPosition=java.awt.Point[x=0,y=0],scrollUnderway=false]
javax.swing.JPanel[name=null]
de.idos.gui.IdosTable[name='IchHabNochKeinenNamen.RowHeader', rowCount=6, columnCount=3, enabled=true, visible=true, showing=false]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
de.idos.form.FormularPanel[name=null]
javax.swing.JPanel[name=null]
javax.swing.JLabel[name=null, text='Kurzname ', enabled=true, visible=true, showing=false]
de.idos.form.LengthField[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.JLabel[name=null, text='Name ', enabled=true, visible=true, showing=false]
de.idos.form.LengthField[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.JLabel[name=null, text='Typ ', enabled=true, visible=true, showing=false]
de.idos.form.DBComboBox[name=null, selectedItem=null, contents=[], editable=false, enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalComboBoxButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
javax.swing.plaf.basic.BasicComboBoxRenderer$UIResource[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.JLabel[name=null, text='Status ', enabled=true, visible=true, showing=false]
de.idos.form.DBComboBox[name=null, selectedItem=null, contents=[], editable=false, enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalComboBoxButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
javax.swing.plaf.basic.BasicComboBoxRenderer$UIResource[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.JLabel[name=null, text='Grenzkosten(EUR/MWh) ', enabled=true, visible=true, showing=false]
de.idos.form.LengthField[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.JLabel[name=null, text=' ', enabled=true, visible=true, showing=false]
de.idos.form.DBLabel[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.JPanel[name=null]
javax.swing.JLabel[name=null, text='Hub ', enabled=true, visible=true, showing=false]
de.idos.form.DBComboBox[name=null, selectedItem=null, contents=[], editable=false, enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalComboBoxButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
javax.swing.plaf.basic.BasicComboBoxRenderer$UIResource[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.JLabel[name=null, text='Counterpart ', enabled=true, visible=true, showing=false]
de.idos.form.DBComboBox[name=null, selectedItem=null, contents=[], editable=false, enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalComboBoxButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
javax.swing.plaf.basic.BasicComboBoxRenderer$UIResource[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.JLabel[name=null, text='Cp-Händler ', enabled=true, visible=true, showing=false]
de.idos.form.DBComboBox[name=null, selectedItem=null, contents=[], editable=false, enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalComboBoxButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
javax.swing.plaf.basic.BasicComboBoxRenderer$UIResource[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.JLabel[name=null, text='EnBW-Händler ', enabled=true, visible=true, showing=false]
de.idos.form.DBComboBox[name=null, selectedItem=null, contents=[], editable=false, enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalComboBoxButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
javax.swing.plaf.basic.BasicComboBoxRenderer$UIResource[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.JLabel[name=null, text='Handelstag ', enabled=true, visible=true, showing=false]
de.idos.form.JDate[name='IchHabNochKeinenNamen']
javax.swing.JPanel[name=null]
de.idos.form.JDate$1[name='calenderButton', text='', enabled=true, visible=true, showing=false]
javax.swing.JPanel[name=null]
de.idos.form.JDate$1[name='ArrowUpIchHabNochKeinenNamen', text='', enabled=true, visible=true, showing=false]
de.idos.form.JDate$1[name='ArrowDownIchHabNochKeinenNamen', text='', enabled=true, visible=true, showing=false]
javax.swing.JTextField[name='Datum-Textfeld', text='13.03.2009', enabled=true, visible=true, showing=false]
javax.swing.JLabel[name=null, text=' ', enabled=true, visible=true, showing=false]
de.idos.form.DBLabel[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.JPanel[name=null]
de.idos.form.DBRadiobutton[name=null, text='Buy', selected=false, enabled=true, visible=true, showing=false]
de.idos.form.DBRadiobutton[name=null, text='Sell', selected=false, enabled=true, visible=true, showing=false]
javax.swing.JLabel[name=null, text='Preis ', enabled=true, visible=true, showing=false]
de.idos.form.Doppelfelder[name=null]
de.idos.form.LengthField[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.JLabel[name=null, text=' / ', enabled=true, visible=true, showing=false]
de.idos.form.EurCurrencyComboBox[name=null, selectedItem='EUR', contents=[], editable=false, enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalComboBoxButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
javax.swing.plaf.basic.BasicComboBoxRenderer$UIResource[name=null, text='EUR', enabled=true, visible=true, showing=false]
javax.swing.JLabel[name=null, text='Broker ', enabled=true, visible=true, showing=false]
de.idos.form.DBComboBox[name=null, selectedItem=null, contents=[], editable=false, enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalComboBoxButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
javax.swing.plaf.basic.BasicComboBoxRenderer$UIResource[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.JLabel[name=null, text='Honorar ', enabled=true, visible=true, showing=false]
de.idos.form.Doppelfelder[name=null]
de.idos.form.LengthField[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.JLabel[name=null, text=' / ', enabled=true, visible=true, showing=false]
de.idos.form.EurCurrencyComboBox[name=null, selectedItem='EUR', contents=[], editable=false, enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalComboBoxButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
javax.swing.plaf.basic.BasicComboBoxRenderer$UIResource[name=null, text='EUR', enabled=true, visible=true, showing=false]
javax.swing.JLabel[name=null, text='Intraday-Prio ', enabled=true, visible=true, showing=false]
de.idos.form.DBComboBox[name=null, selectedItem=null, contents=[], editable=false, enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalComboBoxButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
javax.swing.plaf.basic.BasicComboBoxRenderer$UIResource[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.JLabel[name=null, text=' ', enabled=true, visible=true, showing=false]
de.idos.form.DBLabel[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.JPanel[name=null]
javax.swing.JLabel[name=null, text='Version ', enabled=true, visible=true, showing=false]
de.idos.form.DBLabel[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.JLabel[name=null, text='Herkunft ', enabled=true, visible=true, showing=false]
de.idos.form.LabelListComboBoxModel[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.JLabel[name=null, text='Dealnumber ', enabled=true, visible=true, showing=false]
de.idos.form.DBLabel[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.JLabel[name=null, text='ID ', enabled=true, visible=true, showing=false]
de.idos.form.DBLabel[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.JLabel[name=null, text='Bilanzkreis ', enabled=true, visible=true, showing=false]
de.idos.form.DBLabel[name=null, text=null, enabled=true, visible=true, showing=false]
javax.swing.JLabel[name=null, text='Kostenst.typ ', enabled=true, visible=true, showing=false]
de.idos.form.LabelListComboBoxModel[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.JPanel[name=null]
javax.swing.JButton[name=null, text='Kopieren', enabled=true, visible=true, showing=false]
javax.swing.JButton[name=null, text='Speichern', enabled=true, visible=true, showing=false]
javax.swing.JButton[name=null, text='Import', enabled=true, visible=true, showing=false]
javax.swing.JButton[name=null, text='Leeren', enabled=true, visible=true, showing=false]
javax.swing.JButton[name=null, text='Suchen', enabled=true, visible=true, showing=false]
javax.swing.JButton[name=null, text='Init', enabled=true, visible=true, showing=false]
javax.swing.JButton[name=null, text='Löschen', enabled=true, visible=true, showing=false]
javax.swing.JButton[name=null, text='Cp-Händler', enabled=true, visible=true, showing=false]
javax.swing.JButton[name=null, text='Brokerfee', enabled=true, visible=true, showing=false]
javax.swing.JButton[name=null, text='Intraday Pricing Tool...', enabled=false, visible=true, showing=false]
javax.swing.JPanel[name=null]
javax.swing.JLabel[name=null, text='Interner Kommentar', enabled=true, visible=true, showing=false]
de.idos.form.DBTextArea[name=null]
javax.swing.JScrollPane[name=null, enabled=true, visible=true, showing=false]
javax.swing.JViewport[,1,1,108x19,layout=javax.swing.ViewportLayout,alignmentX=0.0,alignmentY=0.0,border=,flags=25165832,maximumSize=,minimumSize=,preferredSize=,isViewSizeSet=true,lastPaintPosition=java.awt.Point[x=0,y=0],scrollUnderway=false]
javax.swing.JTextArea[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.JScrollPane$ScrollBar[name=null, value=0, blockIncrement=10, minimum=0, maximum=60, enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalScrollButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalScrollButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.JScrollPane$ScrollBar[name=null, value=0, blockIncrement=10, minimum=0, maximum=108, enabled=true, visible=false, showing=false]
javax.swing.plaf.metal.MetalScrollButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalScrollButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.JLabel[name=null, text='Kommentar für das Bestätigungsfax', enabled=true, visible=true, showing=false]
de.idos.form.DBTextArea[name=null]
javax.swing.JScrollPane[name=null, enabled=true, visible=true, showing=false]
javax.swing.JViewport[,1,1,208x19,layout=javax.swing.ViewportLayout,alignmentX=0.0,alignmentY=0.0,border=,flags=25165832,maximumSize=,minimumSize=,preferredSize=,isViewSizeSet=true,lastPaintPosition=java.awt.Point[x=0,y=0],scrollUnderway=false]
javax.swing.JTextArea[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.JScrollPane$ScrollBar[name=null, value=0, blockIncrement=10, minimum=0, maximum=60, enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalScrollButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalScrollButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.JScrollPane$ScrollBar[name=null, value=0, blockIncrement=10, minimum=0, maximum=208, enabled=true, visible=false, showing=false]
javax.swing.plaf.metal.MetalScrollButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalScrollButton[name=null, text='', enabled=true, visible=true, showing=false]
de.enbw.ev.dealtables.details.PnHistory[name=null]
de.enbw.ev.gui.PnDealList[name=null, enabled=true, visible=true, showing=false]
javax.swing.JViewport[,341,16,907x246,layout=javax.swing.ViewportLayout,alignmentX=0.0,alignmentY=0.0,border=,flags=25165832,maximumSize=,minimumSize=,preferredSize=,isViewSizeSet=true,lastPaintPosition=,scrollUnderway=false]
javax.swing.JPanel[name=null]
javax.swing.JTable[name='IchHabNochKeinenNamen', rowCount=5, columnCount=29, enabled=true, visible=true, showing=false]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
javax.swing.JScrollPane$ScrollBar[name=null, value=0, blockIncrement=10, minimum=0, maximum=246, enabled=true, visible=false, showing=false]
javax.swing.plaf.metal.MetalScrollButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalScrollButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.JScrollPane$ScrollBar[name=null, value=0, blockIncrement=10, minimum=0, maximum=2365, enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalScrollButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalScrollButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.JPanel[name=null]
javax.swing.table.JTableHeader[,0,0,340x15,alignmentX=0.0,alignmentY=0.0,border=,flags=16777544,maximumSize=,minimumSize=,preferredSize=,draggedDistance=0,reorderingAllowed=false,resizingAllowed=true,updateTableInRealTime=true]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
javax.swing.JTable[name=null, rowCount=0, columnCount=5, enabled=true, visible=true, showing=false]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
javax.swing.JViewport[,341,1,907x15,layout=javax.swing.ViewportLayout,alignmentX=0.0,alignmentY=0.0,border=,flags=25165832,maximumSize=,minimumSize=,preferredSize=,isViewSizeSet=true,lastPaintPosition=,scrollUnderway=false]
javax.swing.JPanel[name=null]
javax.swing.table.JTableHeader[,0,0,2365x15,alignmentX=0.0,alignmentY=0.0,border=,flags=16777544,maximumSize=,minimumSize=,preferredSize=,draggedDistance=0,reorderingAllowed=false,resizingAllowed=true,updateTableInRealTime=true]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
javax.swing.JViewport[,1,16,340x246,layout=javax.swing.ViewportLayout,alignmentX=0.0,alignmentY=0.0,border=,flags=25165832,maximumSize=,minimumSize=,preferredSize=,isViewSizeSet=true,lastPaintPosition=,scrollUnderway=false]
javax.swing.JPanel[name=null]
javax.swing.JTable[name='IchHabNochKeinenNamenHeader', rowCount=5, columnCount=5, enabled=true, visible=true, showing=false]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
javax.swing.JPanel[name=null]
de.idos.form.FormularPanel[name=null]
javax.swing.JPanel[name=null]
javax.swing.JLabel[name=null, text='Kurzname ', enabled=true, visible=true, showing=false]
de.idos.form.LengthField[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.JLabel[name=null, text='Name ', enabled=true, visible=true, showing=false]
de.idos.form.LengthField[name=null, text='', enabled=false, visible=true, showing=false]
javax.swing.JLabel[name=null, text='Typ ', enabled=true, visible=true, showing=false]
de.idos.form.DBComboBox[name=null, selectedItem=null, contents=[], editable=false, enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalComboBoxButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
javax.swing.JLabel[name=null, text='Status ', enabled=true, visible=true, showing=false]
de.idos.form.DBComboBox[name=null, selectedItem=null, contents=[], editable=false, enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalComboBoxButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
javax.swing.JLabel[name=null, text='Kostenst.typ ', enabled=true, visible=true, showing=false]
de.idos.form.DBComboBox[name=null, selectedItem=null, contents=['0', 'E', 'A', 'E+A'], editable=false, enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalComboBoxButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
javax.swing.JPanel[name=null]
javax.swing.JLabel[name=null, text='Hub ', enabled=true, visible=true, showing=false]
de.idos.form.DBComboBox[name=null, selectedItem=null, contents=[], editable=false, enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalComboBoxButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
javax.swing.JLabel[name=null, text='Counterpart ', enabled=true, visible=true, showing=false]
de.idos.form.DBComboBox[name=null, selectedItem=null, contents=[], editable=false, enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalComboBoxButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
javax.swing.JLabel[name=null, text='Cp-Händler ', enabled=true, visible=true, showing=false]
de.idos.form.DBComboBox[name=null, selectedItem=null, contents=[], editable=false, enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalComboBoxButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
javax.swing.JLabel[name=null, text='EnBW-Händler ', enabled=true, visible=true, showing=false]
de.idos.form.DBComboBox[name=null, selectedItem=null, contents=[], editable=false, enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalComboBoxButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
javax.swing.JLabel[name=null, text='Handelstag ', enabled=true, visible=true, showing=false]
de.idos.form.LengthField[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.JPanel[name=null]
javax.swing.JLabel[name=null, text='Buy/Sell ', enabled=true, visible=true, showing=false]
de.idos.form.DBComboBox[name=null, selectedItem=null, contents=['egal', 'Buy', 'Sell'], editable=false, enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalComboBoxButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
javax.swing.JLabel[name=null, text='Preis ', enabled=true, visible=true, showing=false]
de.idos.form.Doppelfelder[name=null]
de.idos.form.LengthField[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.JLabel[name=null, text=' / ', enabled=true, visible=true, showing=false]
de.idos.form.EurCurrencyComboBox[name=null, selectedItem='EUR', contents=[], editable=false, enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalComboBoxButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
javax.swing.JLabel[name=null, text='Broker ', enabled=true, visible=true, showing=false]
de.idos.form.DBComboBox[name=null, selectedItem=null, contents=[], editable=false, enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalComboBoxButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
javax.swing.JLabel[name=null, text='Honorar ', enabled=true, visible=true, showing=false]
de.idos.form.Doppelfelder[name=null]
de.idos.form.LengthField[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.JLabel[name=null, text=' / ', enabled=true, visible=true, showing=false]
de.idos.form.EurCurrencyComboBox[name=null, selectedItem='EUR', contents=[], editable=false, enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalComboBoxButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
javax.swing.JLabel[name=null, text='Intraday-Prio ', enabled=true, visible=true, showing=false]
de.idos.form.DBComboBox[name=null, selectedItem=null, contents=[], editable=false, enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalComboBoxButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
javax.swing.JPanel[name=null]
javax.swing.JLabel[name=null, text='Version ', enabled=true, visible=true, showing=false]
de.idos.form.LengthField[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.JLabel[name=null, text='Herkunft ', enabled=true, visible=true, showing=false]
de.idos.form.DBComboBox[name=null, selectedItem=null, contents=[], editable=false, enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalComboBoxButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
javax.swing.JLabel[name=null, text='Dealnumber ', enabled=true, visible=true, showing=false]
de.idos.form.LengthField[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.JLabel[name=null, text='Planungstagzustand ', enabled=true, visible=true, showing=false]
de.idos.form.DBComboBox[name=null, selectedItem=null, contents=[], editable=false, enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalComboBoxButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
javax.swing.JPanel[name=null]
javax.swing.JButton[name=null, text='Felder Leeren', enabled=true, visible=true, showing=false]
javax.swing.JButton[name=null, text='Suchen', enabled=true, visible=true, showing=false]
de.enbw.ev.dealtables.details.PnPumpGen[name=null]
de.enbw.share.gui.qplist.PnMultiQuarter[name=null, enabled=true, visible=true, showing=false]
javax.swing.JViewport[,200,16,1048x246,layout=javax.swing.ViewportLayout,alignmentX=0.0,alignmentY=0.0,border=,flags=25165832,maximumSize=,minimumSize=,preferredSize=,isViewSizeSet=true,lastPaintPosition=,scrollUnderway=false]
javax.swing.JPanel[name=null]
de.idos.gui.CopyPasteTable[name='tableSpecialProfiles', rowCount=10, columnCount=24, enabled=true, visible=true, showing=false]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
javax.swing.JScrollPane$ScrollBar[name=null, value=0, blockIncrement=10, minimum=0, maximum=246, enabled=true, visible=false, showing=false]
javax.swing.plaf.metal.MetalScrollButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalScrollButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.JScrollPane$ScrollBar[name=null, value=0, blockIncrement=10, minimum=0, maximum=1048, enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalScrollButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalScrollButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.JPanel[name=null]
javax.swing.table.JTableHeader[,0,0,199x15,alignmentX=0.0,alignmentY=0.0,border=,flags=16777544,maximumSize=,minimumSize=,preferredSize=,draggedDistance=0,reorderingAllowed=false,resizingAllowed=true,updateTableInRealTime=true]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
javax.swing.JViewport[,200,1,1048x15,layout=javax.swing.ViewportLayout,alignmentX=0.0,alignmentY=0.0,border=,flags=25165832,maximumSize=,minimumSize=,preferredSize=,isViewSizeSet=true,lastPaintPosition=,scrollUnderway=false]
javax.swing.JPanel[name=null]
javax.swing.table.JTableHeader[,0,0,1048x15,alignmentX=0.0,alignmentY=0.0,border=,flags=16777544,maximumSize=,minimumSize=,preferredSize=,draggedDistance=0,reorderingAllowed=false,resizingAllowed=true,updateTableInRealTime=true]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
javax.swing.JViewport[,1,16,199x246,layout=javax.swing.ViewportLayout,alignmentX=0.0,alignmentY=0.0,border=,flags=25165832,maximumSize=,minimumSize=,preferredSize=,isViewSizeSet=true,lastPaintPosition=,scrollUnderway=false]
javax.swing.JPanel[name=null]
de.idos.gui.IdosTable[name='tableSpecialProfiles.RowHeader', rowCount=10, columnCount=3, enabled=true, visible=true, showing=false]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
javax.swing.JPanel[name=null]
de.enbw.ev.dealtables.details.PnPumpGen[name=null]
de.enbw.share.gui.qplist.PnMultiQuarter[name=null, enabled=true, visible=true, showing=false]
javax.swing.JViewport[,200,16,1040x87,layout=javax.swing.ViewportLayout,alignmentX=0.0,alignmentY=0.0,border=,flags=25165832,maximumSize=,minimumSize=,preferredSize=,isViewSizeSet=true,lastPaintPosition=java.awt.Point[x=0,y=0],scrollUnderway=false]
javax.swing.JPanel[name=null]
de.idos.gui.CopyPasteTable[name='tableSpecialProfiles', rowCount=6, columnCount=24, enabled=true, visible=true, showing=false]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
javax.swing.JScrollPane$ScrollBar[name=null, value=0, blockIncrement=10, minimum=0, maximum=96, enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalScrollButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalScrollButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.JScrollPane$ScrollBar[name=null, value=0, blockIncrement=10, minimum=0, maximum=1040, enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalScrollButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalScrollButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.JPanel[name=null]
javax.swing.table.JTableHeader[,0,0,199x15,alignmentX=0.0,alignmentY=0.0,border=,flags=16777544,maximumSize=,minimumSize=,preferredSize=,draggedDistance=0,reorderingAllowed=false,resizingAllowed=true,updateTableInRealTime=true]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
javax.swing.JViewport[,200,1,1040x15,layout=javax.swing.ViewportLayout,alignmentX=0.0,alignmentY=0.0,border=,flags=25165832,maximumSize=,minimumSize=,preferredSize=,isViewSizeSet=true,lastPaintPosition=java.awt.Point[x=0,y=0],scrollUnderway=false]
javax.swing.JPanel[name=null]
javax.swing.table.JTableHeader[,0,0,1040x15,alignmentX=0.0,alignmentY=0.0,border=,flags=16777544,maximumSize=,minimumSize=,preferredSize=,draggedDistance=0,reorderingAllowed=false,resizingAllowed=true,updateTableInRealTime=true]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
javax.swing.JViewport[,1,16,199x87,layout=javax.swing.ViewportLayout,alignmentX=0.0,alignmentY=0.0,border=,flags=25165832,maximumSize=,minimumSize=,preferredSize=,isViewSizeSet=true,lastPaintPosition=java.awt.Point[x=0,y=0],scrollUnderway=false]
javax.swing.JPanel[name=null]
de.idos.gui.IdosTable[name='tableSpecialProfiles.RowHeader', rowCount=6, columnCount=3, enabled=true, visible=true, showing=false]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
javax.swing.JTextField[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.JPanel[name=null]
de.idos.form.DBComboBoxFilterElement[name=null, selectedItem=null, contents=[], editable=false, enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalComboBoxButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
javax.swing.plaf.basic.BasicComboBoxRenderer$UIResource[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.JLabel[name=null, text='Counterp.', enabled=true, visible=true, showing=false]
de.idos.form.DBComboBoxFilterElement[name=null, selectedItem=null, contents=[], editable=false, enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalComboBoxButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
javax.swing.plaf.basic.BasicComboBoxRenderer$UIResource[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.JLabel[name=null, text='Hub', enabled=true, visible=true, showing=false]
de.idos.form.DBComboBoxFilterElement[name=null, selectedItem=null, contents=[], editable=false, enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalComboBoxButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
javax.swing.plaf.basic.BasicComboBoxRenderer$UIResource[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.JRadioButton[name=null, text='Nach Hub sortiert', selected=true, enabled=true, visible=true, showing=false]
javax.swing.JRadioButton[name=null, text='Nach Counterpart sortiert', selected=false, enabled=true, visible=true, showing=false]
javax.swing.JRadioButton[name=null, text='Nach Preis sortiert', selected=false, enabled=true, visible=true, showing=false]
javax.swing.JLabel[name=null, text=' ', enabled=true, visible=true, showing=false]
javax.swing.JPanel[name=null]
javax.swing.JSplitPane[,0,34,1259x822,layout=javax.swing.plaf.basic.BasicSplitPaneUI$BasicHorizontalLayoutManager,alignmentX=0.0,alignmentY=0.0,border=javax.swing.plaf.basic.BasicBorders$SplitPaneBorder@7a4f8595,flags=201326920,maximumSize=,minimumSize=,preferredSize=,continuousLayout=true,dividerSize=12,lastDividerLocation=-1,oneTouchExpandable=true,orientation=VERTICAL_SPLIT]
javax.swing.plaf.metal.MetalSplitPaneDivider[,1,690,1257x12,layout=javax.swing.plaf.basic.BasicSplitPaneDivider$DividerLayout]
javax.swing.plaf.metal.MetalSplitPaneDivider$1[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalSplitPaneDivider$2[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.JSplitPane[,1,1,1257x689,layout=javax.swing.plaf.basic.BasicSplitPaneUI$BasicHorizontalLayoutManager,alignmentX=0.0,alignmentY=0.0,border=javax.swing.plaf.basic.BasicBorders$SplitPaneBorder@7a4f8595,flags=201326920,maximumSize=,minimumSize=,preferredSize=,continuousLayout=true,dividerSize=12,lastDividerLocation=-1,oneTouchExpandable=true,orientation=VERTICAL_SPLIT]
javax.swing.plaf.metal.MetalSplitPaneDivider[,1,460,1255x12,layout=javax.swing.plaf.basic.BasicSplitPaneDivider$DividerLayout]
javax.swing.plaf.metal.MetalSplitPaneDivider$1[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalSplitPaneDivider$2[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.JScrollPane[name=null, enabled=true, visible=true, showing=false]
javax.swing.JViewport[,4,27,1247x428,layout=javax.swing.ViewportLayout,alignmentX=0.0,alignmentY=0.0,border=,flags=25165832,maximumSize=,minimumSize=,preferredSize=,isViewSizeSet=true,lastPaintPosition=,scrollUnderway=false]
javax.swing.JPanel[name=null]
de.enbw.ev.gui.psgui.PowerstationXTreeTable[name='powerStationTree', rowCount=1, columnCount=28, enabled=true, visible=true, showing=false]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
javax.swing.JScrollPane$ScrollBar[name=null, value=0, blockIncrement=10, minimum=0, maximum=428, enabled=true, visible=false, showing=false]
javax.swing.plaf.metal.MetalScrollButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalScrollButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.JScrollPane$ScrollBar[name=null, value=0, blockIncrement=10, minimum=0, maximum=1247, enabled=true, visible=false, showing=false]
javax.swing.plaf.metal.MetalScrollButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalScrollButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.JViewport[,4,4,1247x23,layout=javax.swing.ViewportLayout,alignmentX=0.0,alignmentY=0.0,border=,flags=25165832,maximumSize=,minimumSize=,preferredSize=,isViewSizeSet=true,lastPaintPosition=,scrollUnderway=false]
javax.swing.table.JTableHeader[,0,0,1247x23,alignmentX=0.0,alignmentY=0.0,border=,flags=16777544,maximumSize=,minimumSize=,preferredSize=,draggedDistance=0,reorderingAllowed=false,resizingAllowed=true,updateTableInRealTime=true]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
de.idos.gui.MainTabbedPane[name='IchHabNochKeinenNamen', selectedTabIndex=0, selectedTabTitle='Details', tabCount=5, tabTitles=['Details', 'Geschäftshistorie', 'Berechnungen', 'Dispatcher-Info', 'Status Fahrplanversendung'], enabled=true, visible=true, showing=false]
javax.swing.JPanel[name=null]
javax.swing.JPanel[name=null]
de.enbw.share.gui.qplist.PnMultiQuarter[name=null, enabled=true, visible=true, showing=false]
javax.swing.JViewport[,226,16,1022x96,layout=javax.swing.ViewportLayout,alignmentX=0.0,alignmentY=0.0,border=,flags=25165832,maximumSize=,minimumSize=,preferredSize=,isViewSizeSet=true,lastPaintPosition=,scrollUnderway=false]
javax.swing.JPanel[name=null]
de.idos.gui.CopyPasteTable[name='IchHabNochKeinenNamen', rowCount=6, columnCount=26, enabled=true, visible=true, showing=false]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
javax.swing.JScrollPane$ScrollBar[name=null, value=0, blockIncrement=10, minimum=0, maximum=96, enabled=true, visible=false, showing=false]
javax.swing.plaf.metal.MetalScrollButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalScrollButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.JScrollPane$ScrollBar[name=null, value=0, blockIncrement=10, minimum=0, maximum=1040, enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalScrollButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalScrollButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.JPanel[name=null]
javax.swing.table.JTableHeader[,0,0,225x15,alignmentX=0.0,alignmentY=0.0,border=,flags=16777544,maximumSize=,minimumSize=,preferredSize=,draggedDistance=0,reorderingAllowed=false,resizingAllowed=true,updateTableInRealTime=true]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
javax.swing.JViewport[,226,1,1022x15,layout=javax.swing.ViewportLayout,alignmentX=0.0,alignmentY=0.0,border=,flags=25165832,maximumSize=,minimumSize=,preferredSize=,isViewSizeSet=true,lastPaintPosition=,scrollUnderway=false]
javax.swing.JPanel[name=null]
javax.swing.table.JTableHeader[,0,0,1040x15,alignmentX=0.0,alignmentY=0.0,border=,flags=16777544,maximumSize=,minimumSize=,preferredSize=,draggedDistance=0,reorderingAllowed=false,resizingAllowed=true,updateTableInRealTime=true]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
javax.swing.JViewport[,1,16,225x96,layout=javax.swing.ViewportLayout,alignmentX=0.0,alignmentY=0.0,border=,flags=25165832,maximumSize=,minimumSize=,preferredSize=,isViewSizeSet=true,lastPaintPosition=,scrollUnderway=false]
javax.swing.JPanel[name=null]
de.idos.gui.IdosTable[name='IchHabNochKeinenNamen.RowHeader', rowCount=6, columnCount=3, enabled=true, visible=true, showing=false]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
de.enbw.ev.dealtables.details.PnHistory[name=null]
de.enbw.ev.gui.PnDealList[name=null, enabled=true, visible=true, showing=false]
javax.swing.JViewport[,341,16,907x156,layout=javax.swing.ViewportLayout,alignmentX=0.0,alignmentY=0.0,border=,flags=25165832,maximumSize=,minimumSize=,preferredSize=,isViewSizeSet=true,lastPaintPosition=,scrollUnderway=false]
javax.swing.JPanel[name=null]
javax.swing.JTable[name='IchHabNochKeinenNamen', rowCount=5, columnCount=29, enabled=true, visible=true, showing=false]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
javax.swing.JScrollPane$ScrollBar[name=null, value=0, blockIncrement=10, minimum=0, maximum=156, enabled=true, visible=false, showing=false]
javax.swing.plaf.metal.MetalScrollButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalScrollButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.JScrollPane$ScrollBar[name=null, value=0, blockIncrement=10, minimum=0, maximum=2365, enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalScrollButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalScrollButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.JPanel[name=null]
javax.swing.table.JTableHeader[,0,0,340x15,alignmentX=0.0,alignmentY=0.0,border=,flags=16777544,maximumSize=,minimumSize=,preferredSize=,draggedDistance=0,reorderingAllowed=false,resizingAllowed=true,updateTableInRealTime=true]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
javax.swing.JTable[name=null, rowCount=0, columnCount=5, enabled=true, visible=true, showing=false]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
javax.swing.JViewport[,341,1,907x15,layout=javax.swing.ViewportLayout,alignmentX=0.0,alignmentY=0.0,border=,flags=25165832,maximumSize=,minimumSize=,preferredSize=,isViewSizeSet=true,lastPaintPosition=,scrollUnderway=false]
javax.swing.JPanel[name=null]
javax.swing.table.JTableHeader[,0,0,2365x15,alignmentX=0.0,alignmentY=0.0,border=,flags=16777544,maximumSize=,minimumSize=,preferredSize=,draggedDistance=0,reorderingAllowed=false,resizingAllowed=true,updateTableInRealTime=true]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
javax.swing.JViewport[,1,16,340x156,layout=javax.swing.ViewportLayout,alignmentX=0.0,alignmentY=0.0,border=,flags=25165832,maximumSize=,minimumSize=,preferredSize=,isViewSizeSet=true,lastPaintPosition=,scrollUnderway=false]
javax.swing.JPanel[name=null]
javax.swing.JTable[name='IchHabNochKeinenNamenHeader', rowCount=5, columnCount=5, enabled=true, visible=true, showing=false]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
de.enbw.ev.dealtables.details.PnCalcDeals[name=null]
de.enbw.share.gui.qplist.PnMultiQuarter[name=null, enabled=true, visible=true, showing=false]
javax.swing.JViewport[,226,16,1022x156,layout=javax.swing.ViewportLayout,alignmentX=0.0,alignmentY=0.0,border=,flags=25165832,maximumSize=,minimumSize=,preferredSize=,isViewSizeSet=true,lastPaintPosition=,scrollUnderway=false]
javax.swing.JPanel[name=null]
de.idos.gui.CopyPasteTable[name='IchHabNochKeinenNamen', rowCount=9, columnCount=24, enabled=true, visible=true, showing=false]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
javax.swing.JScrollPane$ScrollBar[name=null, value=0, blockIncrement=10, minimum=0, maximum=156, enabled=true, visible=false, showing=false]
javax.swing.plaf.metal.MetalScrollButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalScrollButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.JScrollPane$ScrollBar[name=null, value=0, blockIncrement=10, minimum=0, maximum=1022, enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalScrollButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalScrollButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.JPanel[name=null]
javax.swing.table.JTableHeader[,0,0,225x15,alignmentX=0.0,alignmentY=0.0,border=,flags=16777544,maximumSize=,minimumSize=,preferredSize=,draggedDistance=0,reorderingAllowed=false,resizingAllowed=true,updateTableInRealTime=true]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
javax.swing.JViewport[,226,1,1022x15,layout=javax.swing.ViewportLayout,alignmentX=0.0,alignmentY=0.0,border=,flags=25165832,maximumSize=,minimumSize=,preferredSize=,isViewSizeSet=true,lastPaintPosition=,scrollUnderway=false]
javax.swing.JPanel[name=null]
javax.swing.table.JTableHeader[,0,0,1022x15,alignmentX=0.0,alignmentY=0.0,border=,flags=16777544,maximumSize=,minimumSize=,preferredSize=,draggedDistance=0,reorderingAllowed=false,resizingAllowed=true,updateTableInRealTime=true]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
javax.swing.JViewport[,1,16,225x156,layout=javax.swing.ViewportLayout,alignmentX=0.0,alignmentY=0.0,border=,flags=25165832,maximumSize=,minimumSize=,preferredSize=,isViewSizeSet=true,lastPaintPosition=,scrollUnderway=false]
javax.swing.JPanel[name=null]
de.idos.gui.IdosTable[name='IchHabNochKeinenNamen.RowHeader', rowCount=9, columnCount=3, enabled=true, visible=true, showing=false]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
de.enbw.ev.dealtables.details.PnPumpGen[name=null]
de.enbw.share.gui.qplist.PnMultiQuarter[name=null, enabled=true, visible=true, showing=false]
javax.swing.JViewport[,226,16,1007x156,layout=javax.swing.ViewportLayout,alignmentX=0.0,alignmentY=0.0,border=,flags=25165832,maximumSize=,minimumSize=,preferredSize=,isViewSizeSet=true,lastPaintPosition=,scrollUnderway=false]
javax.swing.JPanel[name=null]
de.idos.gui.CopyPasteTable[name='tableSpecialProfiles', rowCount=10, columnCount=26, enabled=true, visible=true, showing=false]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
javax.swing.JScrollPane$ScrollBar[name=null, value=0, blockIncrement=10, minimum=0, maximum=160, enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalScrollButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalScrollButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.JScrollPane$ScrollBar[name=null, value=0, blockIncrement=10, minimum=0, maximum=1040, enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalScrollButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalScrollButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.JPanel[name=null]
javax.swing.table.JTableHeader[,0,0,225x15,alignmentX=0.0,alignmentY=0.0,border=,flags=16777544,maximumSize=,minimumSize=,preferredSize=,draggedDistance=0,reorderingAllowed=false,resizingAllowed=true,updateTableInRealTime=true]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
javax.swing.JViewport[,226,1,1007x15,layout=javax.swing.ViewportLayout,alignmentX=0.0,alignmentY=0.0,border=,flags=25165832,maximumSize=,minimumSize=,preferredSize=,isViewSizeSet=true,lastPaintPosition=,scrollUnderway=false]
javax.swing.JPanel[name=null]
javax.swing.table.JTableHeader[,0,0,1040x15,alignmentX=0.0,alignmentY=0.0,border=,flags=16777544,maximumSize=,minimumSize=,preferredSize=,draggedDistance=0,reorderingAllowed=false,resizingAllowed=true,updateTableInRealTime=true]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
javax.swing.JViewport[,1,16,225x156,layout=javax.swing.ViewportLayout,alignmentX=0.0,alignmentY=0.0,border=,flags=25165832,maximumSize=,minimumSize=,preferredSize=,isViewSizeSet=true,lastPaintPosition=,scrollUnderway=false]
javax.swing.JPanel[name=null]
de.idos.gui.IdosTable[name='tableSpecialProfiles.RowHeader', rowCount=10, columnCount=3, enabled=true, visible=true, showing=false]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
javax.swing.JPanel[name=null]
de.enbw.ev.dealtables.details.PnPumpGen[name=null]
de.enbw.share.gui.qplist.PnMultiQuarter[name=null, enabled=true, visible=true, showing=false]
javax.swing.JViewport[,226,16,1014x86,layout=javax.swing.ViewportLayout,alignmentX=0.0,alignmentY=0.0,border=,flags=25165832,maximumSize=,minimumSize=,preferredSize=,isViewSizeSet=true,lastPaintPosition=,scrollUnderway=false]
javax.swing.JPanel[name=null]
de.idos.gui.CopyPasteTable[name='tableSpecialProfiles', rowCount=6, columnCount=26, enabled=true, visible=true, showing=false]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
javax.swing.JScrollPane$ScrollBar[name=null, value=0, blockIncrement=10, minimum=0, maximum=96, enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalScrollButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalScrollButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.JScrollPane$ScrollBar[name=null, value=0, blockIncrement=10, minimum=0, maximum=1040, enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalScrollButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalScrollButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.JPanel[name=null]
javax.swing.table.JTableHeader[,0,0,225x15,alignmentX=0.0,alignmentY=0.0,border=,flags=16777544,maximumSize=,minimumSize=,preferredSize=,draggedDistance=0,reorderingAllowed=false,resizingAllowed=true,updateTableInRealTime=true]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
javax.swing.JViewport[,226,1,1014x15,layout=javax.swing.ViewportLayout,alignmentX=0.0,alignmentY=0.0,border=,flags=25165832,maximumSize=,minimumSize=,preferredSize=,isViewSizeSet=true,lastPaintPosition=,scrollUnderway=false]
javax.swing.JPanel[name=null]
javax.swing.table.JTableHeader[,0,0,1040x15,alignmentX=0.0,alignmentY=0.0,border=,flags=16777544,maximumSize=,minimumSize=,preferredSize=,draggedDistance=0,reorderingAllowed=false,resizingAllowed=true,updateTableInRealTime=true]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
javax.swing.JViewport[,1,16,225x86,layout=javax.swing.ViewportLayout,alignmentX=0.0,alignmentY=0.0,border=,flags=25165832,maximumSize=,minimumSize=,preferredSize=,isViewSizeSet=true,lastPaintPosition=,scrollUnderway=false]
javax.swing.JPanel[name=null]
de.idos.gui.IdosTable[name='tableSpecialProfiles.RowHeader', rowCount=6, columnCount=3, enabled=true, visible=true, showing=false]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
javax.swing.JTextField[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.JPanel[name=null]
de.idos.form.DBComboBox[name=null, selectedItem=null, contents=['Leistungsfahrplan (Standard)', 'MaxoP', 'MaxmP', 'TUoP', 'TUmP', 'erhöhte Mindestleistung', 'Nichtverfügbarkeit', 'Optimierer-Verfügbarkeit', 'Max. Tagesarbeit', 'Anfahrkostenzuschlag', 'Zusatzbetriebskosten', 'Zwangseinsatz', 'Beanspruchbare Maximalleistung', 'Beanspruchbare Minimalleistung', 'Festwertfahrplan bei Zwangseinsatz', 'Ist-Werte', 'Soll/Ist-Vergleich', 'Verletzungen BMax', 'Verletzungen BMin'], editable=false, enabled=true, visible=true, showing=false]
javax.swing.plaf.metal.MetalComboBoxButton[name=null, text='', enabled=true, visible=true, showing=false]
javax.swing.CellRendererPane[,0,0,0x0,hidden]
de.idos.gui.MainTabbedPane[name='hubBalanceTabbedPane', selectedTabIndex=0, selectedTabTitle='Europakarte', tabCount=4, tabTitles=['Europakarte', 'Tabelle', 'Übertragungsrechte', 'RTE'], enabled=true, visible=true, showing=true]
I have two observations about this issue, both happen on OpenSuse 10.3 with Xvnc (or Xvfb, this behaves the same way) as the Display Toolkit.
The WindowManager is fvwm2.
We already noticed that the Server,. we run the CI-System on, has different multithreading-behaviour with 4 Cores than the Quadcore desktop,
I'm usually working with. It already showed a couple of unsolved race-conditions in our code, that never popped up on the Desktop.
1) we have a fairly simple test that sometimes fails, although the Component is showing.
The component is created in one EDT-Event and added to the hierarchy. Afterwards it cannot be found although it's printed in the
FailureMessage Hierarchy.
2) Sometimes there is a serious issue with JDialogs and the NewHierarchy
#) create a Robot.robotWithNewAwtHierarchy()
#) create a JDialog with parent=null and show it
#) search for a Button in the Dialog and click it
#) in a second testMethod do the same with different Buttons
This fails, because in the second testMethod the Dialog itself gets into the filter of the NewComponentHierarchy.
If you try to search on it, all children are filtered as well, but it is definitely created after the robot.
I could not track down, how it gets there, but I know that it's in. The dialogs on screen look identical.
The workaround for the issue is to use a parent=new JFrame() in the second test, but as far as I can tell, the
internal SwingUtilities.getSharedOwnerFrame() is already considered in Fest.
genedata.screener.common.awt.wizard.WizardDialog[name='1250238454953', title='Create New Experiment Wizard', enabled=true, modal=true, visible=true, showing=true] javax.swing.JRootPane[] javax.swing.JPanel[name='null.glassPane'] javax.swing.JLayeredPane[] javax.swing.JPanel[name='null.contentPane'] javax.swing.JPanel[name=null] javax.swing.JButton[name='WizardDialog-Cancel-Button', text='Cancel', enabled=true, visible=true, showing=true] javax.swing.JButton[name='WizardDialog-Back-Button', text='< Back', enabled=false, visible=true, showing=true] javax.swing.JButton[name='WizardDialog-Next-Button', text='Next >', enabled=true, visible=true, showing=true] javax.swing.JButton[name='WizardDialog-Finish-Button', text='Finish', enabled=false, visible=true, showing=true] javax.swing.JPanel[name=null] javax.swing.JPanel[name=null] javax.swing.JLabel[name=null, text=null, enabled=true, visible=true, showing=true] javax.swing.JPanel[name=null] ...
org.fest.swing.exception.ComponentLookupException: Unable to find component using matcher org.fest.swing.core.NameMatcher[name='WizardDialog-Next-Button', type=javax.swing.JButton, requireShowing=true]. Component hierarchy: genedata.screener.common.awt.wizard.WizardDialog[name='1250238458834', title='Create New Experiment Wizard', enabled=true, modal=true, visible=true, showing=true] at org.fest.swing.core.BasicComponentFinder.componentNotFound(BasicComponentFinder.java:253) at org.fest.swing.core.BasicComponentFinder.find(BasicComponentFinder.java:242) at org.fest.swing.core.BasicComponentFinder.find(BasicComponentFinder.java:237) at org.fest.swing.core.BasicComponentFinder.findByName(BasicComponentFinder.java:179) at org.fest.swing.fixture.ContainerFixture.findByName(ContainerFixture.java:485) at org.fest.swing.fixture.ContainerFixture.button(ContainerFixture.java:97) at genedata.festSwing.tests.CreateExperimentWizardGuiTest.testSmallLayout(CreateExperimentWizardGuiTest.java:97)
org.fest.swing.exception.ComponentLookupException: Unable to find component using matcher org.fest.swing.core.NameMatcher[name='AA Replicate Plot', type=javax.swing.JPanel, requireShowing=true]. Component hierarchy: net.infonode.docking.View[name='COMPOUND_TABLE'] net.infonode.gui.panel.SimplePanel[name=null] javax.swing.JPanel[name=null] genedata.screener.common.awt.tabbedpane.ScrollableBar[,0,0,1581x34,layout=java.awt.BorderLayout,alignmentX=0.0,alignmentY=0.0,border=,flags=0,maximumSize=,minimumSize=,preferredSize=] genedata.screener.common.awt.tabbedpane.ScrollableBarUI$ArrowButton[name=null, text='', enabled=true, visible=false, showing=false] genedata.screener.common.awt.tabbedpane.ScrollableBarUI$ArrowButton[name=null, text='', enabled=true, visible=false, showing=false] javax.swing.JViewport[,0,0,1581x34,layout=javax.swing.ViewportLayout,alignmentX=0.0,alignmentY=0.0,border=,flags=25165832,maximumSize=,minimumSize=,preferredSize=,isViewSizeSet=true,lastPaintPosition=java.awt.Point[x=0,y=0],scrollUnderway=false] genedata.screener.aa.gui.table.compound.CompoundTableToolBar[name=null] javax.swing.Box$Filler[,3,17,1446x0,alignmentX=0.0,alignmentY=0.0,border=,flags=0,maximumSize=java.awt.Dimension[width=32767,height=0],minimumSize=java.awt.Dimension[width=0,height=0],preferredSize=java.awt.Dimension[width=0,height=0]] javax.swing.JToolBar$1[name='COMPOUND_TABLE_SHOW_FILTER', text='Filter...', enabled=true, visible=true, showing=true] javax.swing.JToolBar$Separator[,1502,12,10x10,alignmentX=0.0,alignmentY=0.0,border=,flags=0,maximumSize=,minimumSize=,preferredSize=,orientation=VERTICAL] javax.swing.JToolBar$1[name='COMPOUND_TABLE_CREATE_REPLICATE_PLOT', text=null, enabled=true, visible=true, showing=true] javax.swing.JToolBar$Separator[,1540,12,10x10,alignmentX=0.0,alignmentY=0.0,border=,flags=0,maximumSize=,minimumSize=,preferredSize=,orientation=VERTICAL] javax.swing.JToolBar$1[name='COMPOUND_TABLE_SHOW_OPTIONS', text=null, enabled=true, visible=true, showing=true] net.infonode.docking.RootWindow[name=null] net.infonode.docking.RootWindow$1[name=null] net.infonode.gui.panel.ResizablePanel[name=null] net.infonode.tabbedpanel.TabbedPanelContentPanel[name=null] net.infonode.tabbedpanel.TabbedPanelContentPanel$2[name=null] net.infonode.docking.WindowBar$2[name=null] net.infonode.gui.panel.ResizablePanel[name=null] net.infonode.tabbedpanel.TabbedPanelContentPanel[name=null] net.infonode.tabbedpanel.TabbedPanelContentPanel$2[name=null] net.infonode.docking.WindowBar$2[name=null] net.infonode.gui.panel.ResizablePanel[name=null] net.infonode.tabbedpanel.TabbedPanelContentPanel[name=null] net.infonode.tabbedpanel.TabbedPanelContentPanel$2[name=null] net.infonode.docking.WindowBar$2[name=null] net.infonode.gui.panel.ResizablePanel[name=null] net.infonode.tabbedpanel.TabbedPanelContentPanel[name=null] net.infonode.tabbedpanel.TabbedPanelContentPanel$2[name=null] net.infonode.docking.WindowBar$2[name=null] net.infonode.gui.panel.SimplePanel[name=null] net.infonode.gui.shaped.panel.ShapedPanel[name=null] net.infonode.docking.SplitWindow[name=null] net.infonode.gui.SimpleSplitPane[name=null] net.infonode.gui.panel.BaseContainer[name=null] net.infonode.gui.panel.SimplePanel[name=null] net.infonode.docking.View[name=null] net.infonode.gui.panel.SimplePanel[name=null] genedata.screener.aa.gui.table.compound.CompoundTable[] genedata.awt.table.Table$2[name='null.glassPane'] javax.swing.JLayeredPane[] javax.swing.JPanel[name='null.contentPane'] genedata.awt.ScrollPanel[name=null, enabled=true, visible=true, showing=true] genedata.awt.ScrollPanel$FocusViewPort[,1,47,1100x183,layout=javax.swing.ViewportLayout,alignmentX=0.0,alignmentY=0.0,border=,flags=25165832,maximumSize=,minimumSize=,preferredSize=,isViewSizeSet=false,lastPaintPosition=java.awt.Point[x=0,y=0],scrollUnderway=false] genedata.awt.table.CellBackgroundTableRenderer[,0,0,251x57,alignmentX=0.0,alignmentY=0.0,border=,flags=0,maximumSize=,minimumSize=,preferredSize=java.awt.Dimension[width=251,height=57]] javax.swing.JScrollPane$ScrollBar[name=null, value=0, blockIncrement=10, minimum=0, maximum=57, enabled=true, visible=false, showing=false] javax.swing.plaf.metal.MetalScrollButton[name=null, text='', enabled=true, visible=true, showing=false] javax.swing.plaf.metal.MetalScrollButton[name=null, text='', enabled=true, visible=true, showing=false] javax.swing.JScrollPane$ScrollBar[name=null, value=0, blockIncrement=10, minimum=0, maximum=251, enabled=true, visible=false, showing=false] javax.swing.plaf.metal.MetalScrollButton[name=null, text='', enabled=true, visible=true, showing=false] javax.swing.plaf.metal.MetalScrollButton[name=null, text='', enabled=true, visible=true, showing=false] genedata.awt.ScrollPanel$FocusViewPort[,1,1,1100x46,layout=javax.swing.ViewportLayout,alignmentX=0.0,alignmentY=0.0,border=,flags=25165832,maximumSize=,minimumSize=,preferredSize=,isViewSizeSet=true,lastPaintPosition=java.awt.Point[x=0,y=0],scrollUnderway=false] genedata.screener.common.awt.table.renderers.ColumnGroupTableHeaderRenderer[name=null] genedata.screener.common.awt.table.renderers.ColumnGroupHeaderRenderer[,0,0,1100x23,alignmentX=0.0,alignmentY=0.0,border=,flags=0,maximumSize=,minimumSize=,preferredSize=] genedata.screener.common.awt.table.renderers.ColumnGroupMemberHeaderRenderer[,0,23,1100x23,alignmentX=0.0,alignmentY=0.0,border=,flags=0,maximumSize=,minimumSize=,preferredSize=] javax.swing.JButton[name=null, text='', enabled=true, visible=true, showing=true] javax.swing.JButton[name=null, text='', enabled=true, visible=true, showing=true] genedata.awt.JStatusBar[name=null] javax.swing.JPanel[name=null] javax.swing.JPanel[name=null] javax.swing.JLabel[name=null, text='3 items', enabled=true, visible=true, showing=true] javax.swing.JPanel[name=null] javax.swing.Box$Filler[,0,0,1103x1,alignmentX=0.0,alignmentY=0.0,border=,flags=0,maximumSize=java.awt.Dimension[width=32767,height=1],minimumSize=java.awt.Dimension[width=0,height=1],preferredSize=java.awt.Dimension[width=0,height=1]] net.infonode.docking.TabWindow[name=null] net.infonode.docking.AbstractTabWindow$3[name=null] net.infonode.tabbedpanel.TabbedPanel$ShadowPanel[name=null] net.infonode.tabbedpanel.TabbedPanelContentPanel[name=null] net.infonode.tabbedpanel.TabbedPanelContentPanel$2[name=null] net.infonode.docking.AbstractTabWindow$2[name=null] net.infonode.gui.panel.SimplePanel[name=null] genedata.screener.aa.gui.docking.view.DynamicViewMapView[name=null] net.infonode.gui.panel.SimplePanel[name=null] net.infonode.docking.RootWindow[name=null] net.infonode.docking.RootWindow$1[name=null] net.infonode.gui.panel.ResizablePanel[name=null] net.infonode.tabbedpanel.TabbedPanelContentPanel[name=null] net.infonode.tabbedpanel.TabbedPanelContentPanel$2[name=null] net.infonode.docking.WindowBar$2[name=null] net.infonode.gui.panel.ResizablePanel[name=null] net.infonode.tabbedpanel.TabbedPanelContentPanel[name=null] net.infonode.tabbedpanel.TabbedPanelContentPanel$2[name=null] net.infonode.docking.WindowBar$2[name=null] net.infonode.gui.panel.ResizablePanel[name=null] net.infonode.tabbedpanel.TabbedPanelContentPanel[name=null] net.infonode.tabbedpanel.TabbedPanelContentPanel$2[name=null] net.infonode.docking.WindowBar$2[name=null] net.infonode.gui.panel.ResizablePanel[name=null] net.infonode.tabbedpanel.TabbedPanelContentPanel[name=null] net.infonode.tabbedpanel.TabbedPanelContentPanel$2[name=null] net.infonode.docking.WindowBar$2[name=null] net.infonode.gui.panel.SimplePanel[name=null] net.infonode.gui.shaped.panel.ShapedPanel[name=null] net.infonode.docking.TabWindow[name=null] net.infonode.docking.AbstractTabWindow$3[name=null] net.infonode.tabbedpanel.TabbedPanel$ShadowPanel[name=null] net.infonode.tabbedpanel.TabbedPanelContentPanel[name=null] net.infonode.tabbedpanel.TabbedPanelContentPanel$2[name=null] net.infonode.docking.AbstractTabWindow$2[name=null] net.infonode.gui.panel.SimplePanel[name=null] genedata.screener.aa.gui.docking.view.DynamicView[name='Replicate Plot'] net.infonode.gui.panel.SimplePanel[name=null] javax.swing.JScrollPane[name=null, enabled=true, visible=true, showing=true] javax.swing.JViewport[,1,1,460x195,layout=javax.swing.ViewportLayout,alignmentX=0.0,alignmentY=0.0,border=,flags=25165832,maximumSize=,minimumSize=,preferredSize=,isViewSizeSet=true,lastPaintPosition=java.awt.Point[x=0,y=0],scrollUnderway=false] genedata.screener.aa.gui.table.compound.replicateplot.AAReplicatePlotComponent[name='AA Replicate Plot'] genedata.swing.sp.JScatterPlot[,0,30,460x165,alignmentX=0.0,alignmentY=0.0,border=genedata.swing.sp.util.ScatterPlotBorder@33bb3ce6,flags=0,maximumSize=,minimumSize=,preferredSize=] genedata.swing.sp.util.JScatterPlotToolBar[name=null] javax.swing.JToolBar[name=null] genedata.awt.actions.ToggleButton[name=null, text='', selected=true, enabled=true, visible=true, showing=true] javax.swing.JScrollPane$ScrollBar[name=null, value=0, blockIncrement=10, minimum=0, maximum=195, enabled=true, visible=false, showing=false] javax.swing.plaf.metal.MetalScrollButton[name=null, text='', enabled=true, visible=true, showing=false] javax.swing.plaf.metal.MetalScrollButton[name=null, text='', enabled=true, visible=true, showing=false] javax.swing.JScrollPane$ScrollBar[name=null, value=0, blockIncrement=10, minimum=0, maximum=460, enabled=true, visible=false, showing=false] javax.swing.plaf.metal.MetalScrollButton[name=null, text='', enabled=true, visible=true, showing=false] javax.swing.plaf.metal.MetalScrollButton[name=null, text='', enabled=true, visible=true, showing=false] net.infonode.tabbedpanel.TabbedPanel$2[name=null] net.infonode.tabbedpanel.TabbedPanel$3[name=null] net.infonode.tabbedpanel.internal.TabDropDownList[name=null] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=true, showing=false] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=false, showing=false] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=false, showing=false] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=false, showing=false] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=false, showing=false] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=false, showing=false] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=false, showing=false] net.infonode.gui.draggable.DraggableComponentBox[name=null] net.infonode.gui.draggable.DraggableComponentBox$3[name=null] net.infonode.docking.WindowTab[name=null] net.infonode.tabbedpanel.titledtab.TitledTab$StatePanel[name=null] net.infonode.gui.shaped.panel.ShapedPanel[name=null] net.infonode.tabbedpanel.titledtab.TitledTab$2[name=null, text='Replicate Plot', enabled=true, visible=true, showing=false] net.infonode.gui.panel.SimplePanel[name=null] net.infonode.docking.WindowTab$4[name=null] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=false, showing=false] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=false, showing=false] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=false, showing=false] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=false, showing=false] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=false, showing=false] net.infonode.tabbedpanel.titledtab.TitledTab$StatePanel[name=null] net.infonode.tabbedpanel.titledtab.TitledTab$3[name=null] net.infonode.gui.shaped.panel.ShapedPanel[name=null] net.infonode.tabbedpanel.titledtab.TitledTab$2[name=null, text='Replicate Plot', enabled=true, visible=true, showing=true] net.infonode.gui.panel.SimplePanel[name=null] net.infonode.docking.WindowTab$1[name=null] net.infonode.gui.panel.DirectionPanel[name=null] net.infonode.docking.WindowTab$4[name=null] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=false, showing=false] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=false, showing=false] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=false, showing=false] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=false, showing=false] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=true, showing=true] net.infonode.tabbedpanel.titledtab.TitledTab$StatePanel[name=null] net.infonode.gui.shaped.panel.ShapedPanel[name=null] net.infonode.tabbedpanel.titledtab.TitledTab$2[name=null, text='Replicate Plot', enabled=true, visible=true, showing=false] net.infonode.docking.WindowBar[name=null] net.infonode.docking.AbstractTabWindow$4[name=null] net.infonode.tabbedpanel.TabbedPanel$ShadowPanel[name=null] net.infonode.tabbedpanel.TabbedPanel$2[name=null] net.infonode.tabbedpanel.TabbedPanel$3[name=null] net.infonode.gui.ScrollButtonBox[name=null] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=false, visible=true, showing=false] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=true, showing=false] net.infonode.tabbedpanel.internal.TabDropDownList[name=null] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=true, showing=false] net.infonode.gui.draggable.DraggableComponentBox[name=null] net.infonode.gui.ScrollableBox[name=null] net.infonode.gui.draggable.DraggableComponentBox$3[name=null] net.infonode.docking.WindowBar[name=null] net.infonode.docking.AbstractTabWindow$4[name=null] net.infonode.tabbedpanel.TabbedPanel$ShadowPanel[name=null] net.infonode.tabbedpanel.TabbedPanel$2[name=null] net.infonode.tabbedpanel.TabbedPanel$3[name=null] net.infonode.gui.ScrollButtonBox[name=null] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=false, visible=true, showing=false] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=true, showing=false] net.infonode.tabbedpanel.internal.TabDropDownList[name=null] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=true, showing=false] net.infonode.gui.draggable.DraggableComponentBox[name=null] net.infonode.gui.ScrollableBox[name=null] net.infonode.gui.draggable.DraggableComponentBox$3[name=null] net.infonode.docking.WindowBar[name=null] net.infonode.docking.AbstractTabWindow$4[name=null] net.infonode.tabbedpanel.TabbedPanel$ShadowPanel[name=null] net.infonode.tabbedpanel.TabbedPanel$2[name=null] net.infonode.tabbedpanel.TabbedPanel$3[name=null] net.infonode.gui.ScrollButtonBox[name=null] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=false, visible=true, showing=false] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=true, showing=false] net.infonode.tabbedpanel.internal.TabDropDownList[name=null] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=true, showing=false] net.infonode.gui.draggable.DraggableComponentBox[name=null] net.infonode.gui.ScrollableBox[name=null] net.infonode.gui.draggable.DraggableComponentBox$3[name=null] net.infonode.docking.WindowBar[name=null] net.infonode.docking.AbstractTabWindow$4[name=null] net.infonode.tabbedpanel.TabbedPanel$ShadowPanel[name=null] net.infonode.tabbedpanel.TabbedPanel$2[name=null] net.infonode.tabbedpanel.TabbedPanel$3[name=null] net.infonode.gui.ScrollButtonBox[name=null] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=false, visible=true, showing=false] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=true, showing=false] net.infonode.tabbedpanel.internal.TabDropDownList[name=null] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=true, showing=false] net.infonode.gui.draggable.DraggableComponentBox[name=null] net.infonode.gui.ScrollableBox[name=null] net.infonode.gui.draggable.DraggableComponentBox$3[name=null] net.infonode.docking.internal.ViewTitleBar[name=null] net.infonode.gui.ContentTitleBar$1[name=null, text=null, enabled=true, visible=true, showing=true] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=false, showing=false] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=false, showing=false] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=false, showing=false] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=true, showing=true] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=false, showing=false] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=true, showing=true] net.infonode.tabbedpanel.TabbedPanel$2[name=null] net.infonode.tabbedpanel.TabbedPanel$3[name=null] net.infonode.tabbedpanel.internal.TabDropDownList[name=null] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=true, showing=false] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=false, showing=false] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=false, showing=false] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=false, showing=false] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=false, showing=false] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=false, showing=false] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=false, showing=false] net.infonode.gui.draggable.DraggableComponentBox[name=null] net.infonode.gui.draggable.DraggableComponentBox$3[name=null] net.infonode.docking.WindowTab[name=null] net.infonode.tabbedpanel.titledtab.TitledTab$StatePanel[name=null] net.infonode.gui.shaped.panel.ShapedPanel[name=null] net.infonode.tabbedpanel.titledtab.TitledTab$2[name=null, text='Plots', enabled=true, visible=true, showing=false] net.infonode.gui.panel.SimplePanel[name=null] net.infonode.docking.WindowTab$4[name=null] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=false, showing=false] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=false, showing=false] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=false, showing=false] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=false, showing=false] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=false, showing=false] net.infonode.tabbedpanel.titledtab.TitledTab$StatePanel[name=null] net.infonode.tabbedpanel.titledtab.TitledTab$3[name=null] net.infonode.gui.shaped.panel.ShapedPanel[name=null] net.infonode.tabbedpanel.titledtab.TitledTab$2[name=null, text='Plots', enabled=true, visible=true, showing=false] net.infonode.gui.panel.SimplePanel[name=null] net.infonode.docking.WindowTab$1[name=null] net.infonode.gui.panel.DirectionPanel[name=null] net.infonode.docking.WindowTab$4[name=null] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=false, showing=false] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=false, showing=false] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=false, showing=false] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=false, showing=false] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=false, showing=false] net.infonode.tabbedpanel.titledtab.TitledTab$StatePanel[name=null] net.infonode.gui.shaped.panel.ShapedPanel[name=null] net.infonode.tabbedpanel.titledtab.TitledTab$2[name=null, text='Plots', enabled=true, visible=true, showing=false] net.infonode.docking.WindowBar[name=null] net.infonode.docking.AbstractTabWindow$4[name=null] net.infonode.tabbedpanel.TabbedPanel$ShadowPanel[name=null] net.infonode.tabbedpanel.TabbedPanel$2[name=null] net.infonode.tabbedpanel.TabbedPanel$3[name=null] net.infonode.gui.ScrollButtonBox[name=null] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=false, visible=true, showing=false] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=true, showing=false] net.infonode.tabbedpanel.internal.TabDropDownList[name=null] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=true, showing=false] net.infonode.gui.draggable.DraggableComponentBox[name=null] net.infonode.gui.ScrollableBox[name=null] net.infonode.gui.draggable.DraggableComponentBox$3[name=null] net.infonode.docking.WindowBar[name=null] net.infonode.docking.AbstractTabWindow$4[name=null] net.infonode.tabbedpanel.TabbedPanel$ShadowPanel[name=null] net.infonode.tabbedpanel.TabbedPanel$2[name=null] net.infonode.tabbedpanel.TabbedPanel$3[name=null] net.infonode.gui.ScrollButtonBox[name=null] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=false, visible=true, showing=false] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=true, showing=false] net.infonode.tabbedpanel.internal.TabDropDownList[name=null] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=true, showing=false] net.infonode.gui.draggable.DraggableComponentBox[name=null] net.infonode.gui.ScrollableBox[name=null] net.infonode.gui.draggable.DraggableComponentBox$3[name=null] net.infonode.docking.WindowBar[name=null] net.infonode.docking.AbstractTabWindow$4[name=null] net.infonode.tabbedpanel.TabbedPanel$ShadowPanel[name=null] net.infonode.tabbedpanel.TabbedPanel$2[name=null] net.infonode.tabbedpanel.TabbedPanel$3[name=null] net.infonode.gui.ScrollButtonBox[name=null] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=false, visible=true, showing=false] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=true, showing=false] net.infonode.tabbedpanel.internal.TabDropDownList[name=null] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=true, showing=false] net.infonode.gui.draggable.DraggableComponentBox[name=null] net.infonode.gui.ScrollableBox[name=null] net.infonode.gui.draggable.DraggableComponentBox$3[name=null] net.infonode.docking.WindowBar[name=null] net.infonode.docking.AbstractTabWindow$4[name=null] net.infonode.tabbedpanel.TabbedPanel$ShadowPanel[name=null] net.infonode.tabbedpanel.TabbedPanel$2[name=null] net.infonode.tabbedpanel.TabbedPanel$3[name=null] net.infonode.gui.ScrollButtonBox[name=null] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=false, visible=true, showing=false] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=true, showing=false] net.infonode.tabbedpanel.internal.TabDropDownList[name=null] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=true, showing=false] net.infonode.gui.draggable.DraggableComponentBox[name=null] net.infonode.gui.ScrollableBox[name=null] net.infonode.gui.draggable.DraggableComponentBox$3[name=null] at org.fest.swing.core.BasicComponentFinder.componentNotFound(BasicComponentFinder.java:253) at org.fest.swing.core.BasicComponentFinder.find(BasicComponentFinder.java:242) at org.fest.swing.core.BasicComponentFinder.find(BasicComponentFinder.java:237) at org.fest.swing.core.BasicComponentFinder.findByName(BasicComponentFinder.java:179) at org.fest.swing.fixture.ContainerFixture.findByName(ContainerFixture.java:485) at org.fest.swing.fixture.ContainerFixture.panel(ContainerFixture.java:280) at genedata.festSwing.tests.AssayAnalyzerTest.createAndCheckReplicatePlot(AssayAnalyzerTest.java:99) at genedata.festSwing.tests.AssayAnalyzerTest.testCreateReplicatePlotAction(AssayAnalyzerTest.java:70) at org.fest.swing.junit.v4_5.runner.GUITestRunner.runChild(GUITestRunner.java:67) at org.fest.swing.junit.v4_5.runner.GUITestRunner.runChild(GUITestRunner.java:38)
genedata.screener.common.awt.wizard.WizardDialog[name='1250238454953', title='Create New Experiment Wizard', enabled=true, modal=true, visible=true, showing=true] javax.swing.JRootPane[] javax.swing.JPanel[name='null.glassPane'] javax.swing.JLayeredPane[] javax.swing.JPanel[name='null.contentPane'] javax.swing.JPanel[name=null] javax.swing.JButton[name='WizardDialog-Cancel-Button', text='Cancel', enabled=true, visible=true, showing=true] javax.swing.JButton[name='WizardDialog-Back-Button', text='< Back', enabled=false, visible=true, showing=true] javax.swing.JButton[name='WizardDialog-Next-Button', text='Next >', enabled=true, visible=true, showing=true] javax.swing.JButton[name='WizardDialog-Finish-Button', text='Finish', enabled=false, visible=true, showing=true] javax.swing.JPanel[name=null] javax.swing.JPanel[name=null] javax.swing.JLabel[name=null, text=null, enabled=true, visible=true, showing=true] javax.swing.JPanel[name=null] ...
org.fest.swing.exception.ComponentLookupException: Unable to find component using matcher org.fest.swing.core.NameMatcher[name='WizardDialog-Next-Button', type=javax.swing.JButton, requireShowing=true]. Component hierarchy: genedata.screener.common.awt.wizard.WizardDialog[name='1250238458834', title='Create New Experiment Wizard', enabled=true, modal=true, visible=true, showing=true] at org.fest.swing.core.BasicComponentFinder.componentNotFound(BasicComponentFinder.java:253) at org.fest.swing.core.BasicComponentFinder.find(BasicComponentFinder.java:242) at org.fest.swing.core.BasicComponentFinder.find(BasicComponentFinder.java:237) at org.fest.swing.core.BasicComponentFinder.findByName(BasicComponentFinder.java:179) at org.fest.swing.fixture.ContainerFixture.findByName(ContainerFixture.java:485) at org.fest.swing.fixture.ContainerFixture.button(ContainerFixture.java:97) at genedata.festSwing.tests.CreateExperimentWizardGuiTest.testSmallLayout(CreateExperimentWizardGuiTest.java:97)
org.fest.swing.exception.ComponentLookupException: Unable to find component using matcher org.fest.swing.core.NameMatcher[name='AA Replicate Plot', type=javax.swing.JPanel, requireShowing=true]. Component hierarchy: net.infonode.docking.View[name='COMPOUND_TABLE'] net.infonode.gui.panel.SimplePanel[name=null] javax.swing.JPanel[name=null] genedata.screener.common.awt.tabbedpane.ScrollableBar[,0,0,1581x34,layout=java.awt.BorderLayout,alignmentX=0.0,alignmentY=0.0,border=,flags=0,maximumSize=,minimumSize=,preferredSize=] genedata.screener.common.awt.tabbedpane.ScrollableBarUI$ArrowButton[name=null, text='', enabled=true, visible=false, showing=false] genedata.screener.common.awt.tabbedpane.ScrollableBarUI$ArrowButton[name=null, text='', enabled=true, visible=false, showing=false] javax.swing.JViewport[,0,0,1581x34,layout=javax.swing.ViewportLayout,alignmentX=0.0,alignmentY=0.0,border=,flags=25165832,maximumSize=,minimumSize=,preferredSize=,isViewSizeSet=true,lastPaintPosition=java.awt.Point[x=0,y=0],scrollUnderway=false] genedata.screener.aa.gui.table.compound.CompoundTableToolBar[name=null] javax.swing.Box$Filler[,3,17,1446x0,alignmentX=0.0,alignmentY=0.0,border=,flags=0,maximumSize=java.awt.Dimension[width=32767,height=0],minimumSize=java.awt.Dimension[width=0,height=0],preferredSize=java.awt.Dimension[width=0,height=0]] javax.swing.JToolBar$1[name='COMPOUND_TABLE_SHOW_FILTER', text='Filter...', enabled=true, visible=true, showing=true] javax.swing.JToolBar$Separator[,1502,12,10x10,alignmentX=0.0,alignmentY=0.0,border=,flags=0,maximumSize=,minimumSize=,preferredSize=,orientation=VERTICAL] javax.swing.JToolBar$1[name='COMPOUND_TABLE_CREATE_REPLICATE_PLOT', text=null, enabled=true, visible=true, showing=true] javax.swing.JToolBar$Separator[,1540,12,10x10,alignmentX=0.0,alignmentY=0.0,border=,flags=0,maximumSize=,minimumSize=,preferredSize=,orientation=VERTICAL] javax.swing.JToolBar$1[name='COMPOUND_TABLE_SHOW_OPTIONS', text=null, enabled=true, visible=true, showing=true] net.infonode.docking.RootWindow[name=null] net.infonode.docking.RootWindow$1[name=null] net.infonode.gui.panel.ResizablePanel[name=null] net.infonode.tabbedpanel.TabbedPanelContentPanel[name=null] net.infonode.tabbedpanel.TabbedPanelContentPanel$2[name=null] net.infonode.docking.WindowBar$2[name=null] net.infonode.gui.panel.ResizablePanel[name=null] net.infonode.tabbedpanel.TabbedPanelContentPanel[name=null] net.infonode.tabbedpanel.TabbedPanelContentPanel$2[name=null] net.infonode.docking.WindowBar$2[name=null] net.infonode.gui.panel.ResizablePanel[name=null] net.infonode.tabbedpanel.TabbedPanelContentPanel[name=null] net.infonode.tabbedpanel.TabbedPanelContentPanel$2[name=null] net.infonode.docking.WindowBar$2[name=null] net.infonode.gui.panel.ResizablePanel[name=null] net.infonode.tabbedpanel.TabbedPanelContentPanel[name=null] net.infonode.tabbedpanel.TabbedPanelContentPanel$2[name=null] net.infonode.docking.WindowBar$2[name=null] net.infonode.gui.panel.SimplePanel[name=null] net.infonode.gui.shaped.panel.ShapedPanel[name=null] net.infonode.docking.SplitWindow[name=null] net.infonode.gui.SimpleSplitPane[name=null] net.infonode.gui.panel.BaseContainer[name=null] net.infonode.gui.panel.SimplePanel[name=null] net.infonode.docking.View[name=null] net.infonode.gui.panel.SimplePanel[name=null] genedata.screener.aa.gui.table.compound.CompoundTable[] genedata.awt.table.Table$2[name='null.glassPane'] javax.swing.JLayeredPane[] javax.swing.JPanel[name='null.contentPane'] genedata.awt.ScrollPanel[name=null, enabled=true, visible=true, showing=true] genedata.awt.ScrollPanel$FocusViewPort[,1,47,1100x183,layout=javax.swing.ViewportLayout,alignmentX=0.0,alignmentY=0.0,border=,flags=25165832,maximumSize=,minimumSize=,preferredSize=,isViewSizeSet=false,lastPaintPosition=java.awt.Point[x=0,y=0],scrollUnderway=false] genedata.awt.table.CellBackgroundTableRenderer[,0,0,251x57,alignmentX=0.0,alignmentY=0.0,border=,flags=0,maximumSize=,minimumSize=,preferredSize=java.awt.Dimension[width=251,height=57]] javax.swing.JScrollPane$ScrollBar[name=null, value=0, blockIncrement=10, minimum=0, maximum=57, enabled=true, visible=false, showing=false] javax.swing.plaf.metal.MetalScrollButton[name=null, text='', enabled=true, visible=true, showing=false] javax.swing.plaf.metal.MetalScrollButton[name=null, text='', enabled=true, visible=true, showing=false] javax.swing.JScrollPane$ScrollBar[name=null, value=0, blockIncrement=10, minimum=0, maximum=251, enabled=true, visible=false, showing=false] javax.swing.plaf.metal.MetalScrollButton[name=null, text='', enabled=true, visible=true, showing=false] javax.swing.plaf.metal.MetalScrollButton[name=null, text='', enabled=true, visible=true, showing=false] genedata.awt.ScrollPanel$FocusViewPort[,1,1,1100x46,layout=javax.swing.ViewportLayout,alignmentX=0.0,alignmentY=0.0,border=,flags=25165832,maximumSize=,minimumSize=,preferredSize=,isViewSizeSet=true,lastPaintPosition=java.awt.Point[x=0,y=0],scrollUnderway=false] genedata.screener.common.awt.table.renderers.ColumnGroupTableHeaderRenderer[name=null] genedata.screener.common.awt.table.renderers.ColumnGroupHeaderRenderer[,0,0,1100x23,alignmentX=0.0,alignmentY=0.0,border=,flags=0,maximumSize=,minimumSize=,preferredSize=] genedata.screener.common.awt.table.renderers.ColumnGroupMemberHeaderRenderer[,0,23,1100x23,alignmentX=0.0,alignmentY=0.0,border=,flags=0,maximumSize=,minimumSize=,preferredSize=] javax.swing.JButton[name=null, text='', enabled=true, visible=true, showing=true] javax.swing.JButton[name=null, text='', enabled=true, visible=true, showing=true] genedata.awt.JStatusBar[name=null] javax.swing.JPanel[name=null] javax.swing.JPanel[name=null] javax.swing.JLabel[name=null, text='3 items', enabled=true, visible=true, showing=true] javax.swing.JPanel[name=null] javax.swing.Box$Filler[,0,0,1103x1,alignmentX=0.0,alignmentY=0.0,border=,flags=0,maximumSize=java.awt.Dimension[width=32767,height=1],minimumSize=java.awt.Dimension[width=0,height=1],preferredSize=java.awt.Dimension[width=0,height=1]] net.infonode.docking.TabWindow[name=null] net.infonode.docking.AbstractTabWindow$3[name=null] net.infonode.tabbedpanel.TabbedPanel$ShadowPanel[name=null] net.infonode.tabbedpanel.TabbedPanelContentPanel[name=null] net.infonode.tabbedpanel.TabbedPanelContentPanel$2[name=null] net.infonode.docking.AbstractTabWindow$2[name=null] net.infonode.gui.panel.SimplePanel[name=null] genedata.screener.aa.gui.docking.view.DynamicViewMapView[name=null] net.infonode.gui.panel.SimplePanel[name=null] net.infonode.docking.RootWindow[name=null] net.infonode.docking.RootWindow$1[name=null] net.infonode.gui.panel.ResizablePanel[name=null] net.infonode.tabbedpanel.TabbedPanelContentPanel[name=null] net.infonode.tabbedpanel.TabbedPanelContentPanel$2[name=null] net.infonode.docking.WindowBar$2[name=null] net.infonode.gui.panel.ResizablePanel[name=null] net.infonode.tabbedpanel.TabbedPanelContentPanel[name=null] net.infonode.tabbedpanel.TabbedPanelContentPanel$2[name=null] net.infonode.docking.WindowBar$2[name=null] net.infonode.gui.panel.ResizablePanel[name=null] net.infonode.tabbedpanel.TabbedPanelContentPanel[name=null] net.infonode.tabbedpanel.TabbedPanelContentPanel$2[name=null] net.infonode.docking.WindowBar$2[name=null] net.infonode.gui.panel.ResizablePanel[name=null] net.infonode.tabbedpanel.TabbedPanelContentPanel[name=null] net.infonode.tabbedpanel.TabbedPanelContentPanel$2[name=null] net.infonode.docking.WindowBar$2[name=null] net.infonode.gui.panel.SimplePanel[name=null] net.infonode.gui.shaped.panel.ShapedPanel[name=null] net.infonode.docking.TabWindow[name=null] net.infonode.docking.AbstractTabWindow$3[name=null] net.infonode.tabbedpanel.TabbedPanel$ShadowPanel[name=null] net.infonode.tabbedpanel.TabbedPanelContentPanel[name=null] net.infonode.tabbedpanel.TabbedPanelContentPanel$2[name=null] net.infonode.docking.AbstractTabWindow$2[name=null] net.infonode.gui.panel.SimplePanel[name=null] genedata.screener.aa.gui.docking.view.DynamicView[name='Replicate Plot'] net.infonode.gui.panel.SimplePanel[name=null] javax.swing.JScrollPane[name=null, enabled=true, visible=true, showing=true] javax.swing.JViewport[,1,1,460x195,layout=javax.swing.ViewportLayout,alignmentX=0.0,alignmentY=0.0,border=,flags=25165832,maximumSize=,minimumSize=,preferredSize=,isViewSizeSet=true,lastPaintPosition=java.awt.Point[x=0,y=0],scrollUnderway=false] genedata.screener.aa.gui.table.compound.replicateplot.AAReplicatePlotComponent[name='AA Replicate Plot'] genedata.swing.sp.JScatterPlot[,0,30,460x165,alignmentX=0.0,alignmentY=0.0,border=genedata.swing.sp.util.ScatterPlotBorder@33bb3ce6,flags=0,maximumSize=,minimumSize=,preferredSize=] genedata.swing.sp.util.JScatterPlotToolBar[name=null] javax.swing.JToolBar[name=null] genedata.awt.actions.ToggleButton[name=null, text='', selected=true, enabled=true, visible=true, showing=true] javax.swing.JScrollPane$ScrollBar[name=null, value=0, blockIncrement=10, minimum=0, maximum=195, enabled=true, visible=false, showing=false] javax.swing.plaf.metal.MetalScrollButton[name=null, text='', enabled=true, visible=true, showing=false] javax.swing.plaf.metal.MetalScrollButton[name=null, text='', enabled=true, visible=true, showing=false] javax.swing.JScrollPane$ScrollBar[name=null, value=0, blockIncrement=10, minimum=0, maximum=460, enabled=true, visible=false, showing=false] javax.swing.plaf.metal.MetalScrollButton[name=null, text='', enabled=true, visible=true, showing=false] javax.swing.plaf.metal.MetalScrollButton[name=null, text='', enabled=true, visible=true, showing=false] net.infonode.tabbedpanel.TabbedPanel$2[name=null] net.infonode.tabbedpanel.TabbedPanel$3[name=null] net.infonode.tabbedpanel.internal.TabDropDownList[name=null] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=true, showing=false] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=false, showing=false] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=false, showing=false] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=false, showing=false] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=false, showing=false] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=false, showing=false] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=false, showing=false] net.infonode.gui.draggable.DraggableComponentBox[name=null] net.infonode.gui.draggable.DraggableComponentBox$3[name=null] net.infonode.docking.WindowTab[name=null] net.infonode.tabbedpanel.titledtab.TitledTab$StatePanel[name=null] net.infonode.gui.shaped.panel.ShapedPanel[name=null] net.infonode.tabbedpanel.titledtab.TitledTab$2[name=null, text='Replicate Plot', enabled=true, visible=true, showing=false] net.infonode.gui.panel.SimplePanel[name=null] net.infonode.docking.WindowTab$4[name=null] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=false, showing=false] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=false, showing=false] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=false, showing=false] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=false, showing=false] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=false, showing=false] net.infonode.tabbedpanel.titledtab.TitledTab$StatePanel[name=null] net.infonode.tabbedpanel.titledtab.TitledTab$3[name=null] net.infonode.gui.shaped.panel.ShapedPanel[name=null] net.infonode.tabbedpanel.titledtab.TitledTab$2[name=null, text='Replicate Plot', enabled=true, visible=true, showing=true] net.infonode.gui.panel.SimplePanel[name=null] net.infonode.docking.WindowTab$1[name=null] net.infonode.gui.panel.DirectionPanel[name=null] net.infonode.docking.WindowTab$4[name=null] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=false, showing=false] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=false, showing=false] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=false, showing=false] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=false, showing=false] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=true, showing=true] net.infonode.tabbedpanel.titledtab.TitledTab$StatePanel[name=null] net.infonode.gui.shaped.panel.ShapedPanel[name=null] net.infonode.tabbedpanel.titledtab.TitledTab$2[name=null, text='Replicate Plot', enabled=true, visible=true, showing=false] net.infonode.docking.WindowBar[name=null] net.infonode.docking.AbstractTabWindow$4[name=null] net.infonode.tabbedpanel.TabbedPanel$ShadowPanel[name=null] net.infonode.tabbedpanel.TabbedPanel$2[name=null] net.infonode.tabbedpanel.TabbedPanel$3[name=null] net.infonode.gui.ScrollButtonBox[name=null] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=false, visible=true, showing=false] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=true, showing=false] net.infonode.tabbedpanel.internal.TabDropDownList[name=null] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=true, showing=false] net.infonode.gui.draggable.DraggableComponentBox[name=null] net.infonode.gui.ScrollableBox[name=null] net.infonode.gui.draggable.DraggableComponentBox$3[name=null] net.infonode.docking.WindowBar[name=null] net.infonode.docking.AbstractTabWindow$4[name=null] net.infonode.tabbedpanel.TabbedPanel$ShadowPanel[name=null] net.infonode.tabbedpanel.TabbedPanel$2[name=null] net.infonode.tabbedpanel.TabbedPanel$3[name=null] net.infonode.gui.ScrollButtonBox[name=null] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=false, visible=true, showing=false] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=true, showing=false] net.infonode.tabbedpanel.internal.TabDropDownList[name=null] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=true, showing=false] net.infonode.gui.draggable.DraggableComponentBox[name=null] net.infonode.gui.ScrollableBox[name=null] net.infonode.gui.draggable.DraggableComponentBox$3[name=null] net.infonode.docking.WindowBar[name=null] net.infonode.docking.AbstractTabWindow$4[name=null] net.infonode.tabbedpanel.TabbedPanel$ShadowPanel[name=null] net.infonode.tabbedpanel.TabbedPanel$2[name=null] net.infonode.tabbedpanel.TabbedPanel$3[name=null] net.infonode.gui.ScrollButtonBox[name=null] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=false, visible=true, showing=false] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=true, showing=false] net.infonode.tabbedpanel.internal.TabDropDownList[name=null] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=true, showing=false] net.infonode.gui.draggable.DraggableComponentBox[name=null] net.infonode.gui.ScrollableBox[name=null] net.infonode.gui.draggable.DraggableComponentBox$3[name=null] net.infonode.docking.WindowBar[name=null] net.infonode.docking.AbstractTabWindow$4[name=null] net.infonode.tabbedpanel.TabbedPanel$ShadowPanel[name=null] net.infonode.tabbedpanel.TabbedPanel$2[name=null] net.infonode.tabbedpanel.TabbedPanel$3[name=null] net.infonode.gui.ScrollButtonBox[name=null] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=false, visible=true, showing=false] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=true, showing=false] net.infonode.tabbedpanel.internal.TabDropDownList[name=null] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=true, showing=false] net.infonode.gui.draggable.DraggableComponentBox[name=null] net.infonode.gui.ScrollableBox[name=null] net.infonode.gui.draggable.DraggableComponentBox$3[name=null] net.infonode.docking.internal.ViewTitleBar[name=null] net.infonode.gui.ContentTitleBar$1[name=null, text=null, enabled=true, visible=true, showing=true] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=false, showing=false] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=false, showing=false] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=false, showing=false] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=true, showing=true] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=false, showing=false] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=true, showing=true] net.infonode.tabbedpanel.TabbedPanel$2[name=null] net.infonode.tabbedpanel.TabbedPanel$3[name=null] net.infonode.tabbedpanel.internal.TabDropDownList[name=null] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=true, showing=false] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=false, showing=false] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=false, showing=false] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=false, showing=false] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=false, showing=false] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=false, showing=false] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=false, showing=false] net.infonode.gui.draggable.DraggableComponentBox[name=null] net.infonode.gui.draggable.DraggableComponentBox$3[name=null] net.infonode.docking.WindowTab[name=null] net.infonode.tabbedpanel.titledtab.TitledTab$StatePanel[name=null] net.infonode.gui.shaped.panel.ShapedPanel[name=null] net.infonode.tabbedpanel.titledtab.TitledTab$2[name=null, text='Plots', enabled=true, visible=true, showing=false] net.infonode.gui.panel.SimplePanel[name=null] net.infonode.docking.WindowTab$4[name=null] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=false, showing=false] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=false, showing=false] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=false, showing=false] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=false, showing=false] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=false, showing=false] net.infonode.tabbedpanel.titledtab.TitledTab$StatePanel[name=null] net.infonode.tabbedpanel.titledtab.TitledTab$3[name=null] net.infonode.gui.shaped.panel.ShapedPanel[name=null] net.infonode.tabbedpanel.titledtab.TitledTab$2[name=null, text='Plots', enabled=true, visible=true, showing=false] net.infonode.gui.panel.SimplePanel[name=null] net.infonode.docking.WindowTab$1[name=null] net.infonode.gui.panel.DirectionPanel[name=null] net.infonode.docking.WindowTab$4[name=null] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=false, showing=false] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=false, showing=false] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=false, showing=false] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=false, showing=false] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=false, showing=false] net.infonode.tabbedpanel.titledtab.TitledTab$StatePanel[name=null] net.infonode.gui.shaped.panel.ShapedPanel[name=null] net.infonode.tabbedpanel.titledtab.TitledTab$2[name=null, text='Plots', enabled=true, visible=true, showing=false] net.infonode.docking.WindowBar[name=null] net.infonode.docking.AbstractTabWindow$4[name=null] net.infonode.tabbedpanel.TabbedPanel$ShadowPanel[name=null] net.infonode.tabbedpanel.TabbedPanel$2[name=null] net.infonode.tabbedpanel.TabbedPanel$3[name=null] net.infonode.gui.ScrollButtonBox[name=null] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=false, visible=true, showing=false] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=true, showing=false] net.infonode.tabbedpanel.internal.TabDropDownList[name=null] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=true, showing=false] net.infonode.gui.draggable.DraggableComponentBox[name=null] net.infonode.gui.ScrollableBox[name=null] net.infonode.gui.draggable.DraggableComponentBox$3[name=null] net.infonode.docking.WindowBar[name=null] net.infonode.docking.AbstractTabWindow$4[name=null] net.infonode.tabbedpanel.TabbedPanel$ShadowPanel[name=null] net.infonode.tabbedpanel.TabbedPanel$2[name=null] net.infonode.tabbedpanel.TabbedPanel$3[name=null] net.infonode.gui.ScrollButtonBox[name=null] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=false, visible=true, showing=false] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=true, showing=false] net.infonode.tabbedpanel.internal.TabDropDownList[name=null] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=true, showing=false] net.infonode.gui.draggable.DraggableComponentBox[name=null] net.infonode.gui.ScrollableBox[name=null] net.infonode.gui.draggable.DraggableComponentBox$3[name=null] net.infonode.docking.WindowBar[name=null] net.infonode.docking.AbstractTabWindow$4[name=null] net.infonode.tabbedpanel.TabbedPanel$ShadowPanel[name=null] net.infonode.tabbedpanel.TabbedPanel$2[name=null] net.infonode.tabbedpanel.TabbedPanel$3[name=null] net.infonode.gui.ScrollButtonBox[name=null] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=false, visible=true, showing=false] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=true, showing=false] net.infonode.tabbedpanel.internal.TabDropDownList[name=null] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=true, showing=false] net.infonode.gui.draggable.DraggableComponentBox[name=null] net.infonode.gui.ScrollableBox[name=null] net.infonode.gui.draggable.DraggableComponentBox$3[name=null] net.infonode.docking.WindowBar[name=null] net.infonode.docking.AbstractTabWindow$4[name=null] net.infonode.tabbedpanel.TabbedPanel$ShadowPanel[name=null] net.infonode.tabbedpanel.TabbedPanel$2[name=null] net.infonode.tabbedpanel.TabbedPanel$3[name=null] net.infonode.gui.ScrollButtonBox[name=null] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=false, visible=true, showing=false] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=true, showing=false] net.infonode.tabbedpanel.internal.TabDropDownList[name=null] net.infonode.gui.ButtonFactory$3[name=null, text='', enabled=true, visible=true, showing=false] net.infonode.gui.draggable.DraggableComponentBox[name=null] net.infonode.gui.ScrollableBox[name=null] net.infonode.gui.draggable.DraggableComponentBox$3[name=null] at org.fest.swing.core.BasicComponentFinder.componentNotFound(BasicComponentFinder.java:253) at org.fest.swing.core.BasicComponentFinder.find(BasicComponentFinder.java:242) at org.fest.swing.core.BasicComponentFinder.find(BasicComponentFinder.java:237) at org.fest.swing.core.BasicComponentFinder.findByName(BasicComponentFinder.java:179) at org.fest.swing.fixture.ContainerFixture.findByName(ContainerFixture.java:485) at org.fest.swing.fixture.ContainerFixture.panel(ContainerFixture.java:280) at genedata.festSwing.tests.AssayAnalyzerTest.createAndCheckReplicatePlot(AssayAnalyzerTest.java:99) at genedata.festSwing.tests.AssayAnalyzerTest.testCreateReplicatePlotAction(AssayAnalyzerTest.java:70) at org.fest.swing.junit.v4_5.runner.GUITestRunner.runChild(GUITestRunner.java:67) at org.fest.swing.junit.v4_5.runner.GUITestRunner.runChild(GUITestRunner.java:38)
i think the problem is due to visibility problems between different threads. if you're interested in this, read these articles:
http://gee.cs.oswego.edu/dl/cpj/jmm.html
http://www.cs.umd.edu/~pugh/java/memoryModel/jsr-133-faq.html#volatile
the core problem probably is in method GuiActionRunner.run().
within this method data (e.g. component trees) is passed between different threads via a GuiAction object without employing
any kind of memory barrier (synchronizing on the same object, accessing volatile variables). the patched files attached to this
issue should prevent those problems. i think an even simpler solution is to use SwingUtilities.invokeAndWait() instead of
calling SwingUtilities.invokeLater() and wait using a CountDownLatch. additionally i attached a compiled jar containing the
patches shown in the java files attached. feel free to use it to see whether the problems disappear.
i've provided this jar to mihael and according to him he had no longer any ComponentNotFoundException issues.
Hey Martin!
Thanks a lot for updating the bug and providing the patches. I didn't have a chance to look into this for the past release, and I didn't want to rush things either. This bug has the highest priority for this release ![]()
Again, many, many thanks for your help!
Best regards,
-Alex
I'm pretty sure I found the problem:
The component hierarchy is stale (thanks to Martin for pointing that out.) This is due to how BasicRobot is created. The constructor receives a ComponentHierarchy and then tries to acquire ScreenLock (a semaphore to serialize access to screen, mouse and keyboard.) The problem shows up when ScreenLock is held by somebody else and the current BasicRobot has to wait. Once ScreenLock is released, the component hierarchy is very likely to have changed, and now the new BasicRobot ends up with a stale ComponentHierarchy.
The fix involves trying to acquire ScreenLock first, before creating a new BasicRobot. Once ScreenLock is held, new ComponentHierarchy and BasicRobot are created.
Luckily we have static factory methods for BasicRobot, therefore users will not be affected by API changes ![]()
Please give this fix a try. I just uploaded a new snapshot at our Maven repo: http://snapshots.repository.codehaus.org/org/easytesting (the jar and sources have the name fest-swing-1.2a4-20091206.162251-5.)
Thanks!
-Alex
I did some more research about our problems on a virtual Ubuntu 8.10 desktop box. My simple tests seem to work reliable but a more complex one fails. Here is the stacktrace:
junit.framework.AssertionFailedError: Unable to find component using matcher org.fest.swing.core.matcher.JButtonMatcher[name='Sichern', text=<Any>, requireShowing=false]. Component hierarchy: javax.swing.JDialog[name='dialog0', title='Container hinzufügen', enabled=true, modal=true, visible=true, showing=true] javax.swing.JRootPane[] javax.swing.JPanel[name='null.glassPane'] javax.swing.JLayeredPane[] javax.swing.JPanel[name='null.contentPane'] javax.swing.JPanel[name=null] javax.swing.JLabel[name=null, text='Bitte geben Sie die Daten des neuen Containers ein:', enabled=true, visible=true, showing=true] com.schneide.framework.layout.GridBagLayoutPanel[name=null] javax.swing.JLabel[name=null, text='Containernummer:', enabled=true, visible=true, showing=true] com.schneide.framework.input.inputs.TextfieldInput[name='Containernummer', text='', enabled=true, visible=true, showing=true] javax.swing.JLabel[name=null, text='', enabled=true, visible=true, showing=true] javax.swing.JLabel[name=null, text='Gewicht mit Fässern ohne Deckel [kg]:', enabled=true, visible=true, showing=true] com.schneide.framework.input.inputs.TextfieldInput[name='Gewicht mit Fässern ohne Deckel', text='0', enabled=true, visible=true, showing=true] javax.swing.JLabel[name=null, text='', enabled=true, visible=true, showing=true] javax.swing.JPanel[name=null] javax.swing.Box$Filler[,5,28,204x0,alignmentX=0.0,alignmentY=0.0,border=,flags=0,maximumSize=java.awt.Dimension[width=32767,height=0],minimumSize=java.awt.Dimension[width=0,height=0],preferredSize=java.awt.Dimension[width=0,height=0]] com.schneide.framework.gui.dialog.button.ValidatingDialogButton[name='Sichern', text='Sichern', enabled=true, visible=true, showing=true] javax.swing.Box$Filler[,262,28,5x0,alignmentX=0.0,alignmentY=0.0,border=,flags=0,maximumSize=java.awt.Dimension[width=5,height=0],minimumSize=java.awt.Dimension[width=5,height=0],preferredSize=java.awt.Dimension[width=5,height=0]] com.schneide.framework.gui.dialog.button.NonvalidatingDialogButton[name='Abbrechen', text='Abbrechen', enabled=true, visible=true, showing=true] at junit.framework.Assert.fail(Assert.java:47) at com.schneide.pontos.gui.AddContainerTest.testAddContainer(AddContainerTest.java:72) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:44) at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15) at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:41) at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:20) at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:28) at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:31) at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:73) at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:46) at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:180) at org.junit.runners.ParentRunner.access$000(ParentRunner.java:41) at org.junit.runners.ParentRunner$1.evaluate(ParentRunner.java:173) at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:28) at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:31) at org.junit.runners.ParentRunner.run(ParentRunner.java:220) at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:45) at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:460) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:673) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:386) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:196)junit.framework.AssertionFailedError: Unable to find component using matcher org.fest.swing.core.matcher.JButtonMatcher[name='Sichern', text=<Any>, requireShowing=false]. Component hierarchy: javax.swing.JDialog[name='dialog0', title='Container hinzufügen', enabled=true, modal=true, visible=true, showing=true] javax.swing.JRootPane[] javax.swing.JPanel[name='null.glassPane'] javax.swing.JLayeredPane[] javax.swing.JPanel[name='null.contentPane'] javax.swing.JPanel[name=null] javax.swing.JLabel[name=null, text='Bitte geben Sie die Daten des neuen Containers ein:', enabled=true, visible=true, showing=true] com.schneide.framework.layout.GridBagLayoutPanel[name=null] javax.swing.JLabel[name=null, text='Containernummer:', enabled=true, visible=true, showing=true] com.schneide.framework.input.inputs.TextfieldInput[name='Containernummer', text='', enabled=true, visible=true, showing=true] javax.swing.JLabel[name=null, text='', enabled=true, visible=true, showing=true] javax.swing.JLabel[name=null, text='Gewicht mit Fässern ohne Deckel [kg]:', enabled=true, visible=true, showing=true] com.schneide.framework.input.inputs.TextfieldInput[name='Gewicht mit Fässern ohne Deckel', text='0', enabled=true, visible=true, showing=true] javax.swing.JLabel[name=null, text='', enabled=true, visible=true, showing=true] javax.swing.JPanel[name=null] javax.swing.Box$Filler[,5,28,204x0,alignmentX=0.0,alignmentY=0.0,border=,flags=0,maximumSize=java.awt.Dimension[width=32767,height=0],minimumSize=java.awt.Dimension[width=0,height=0],preferredSize=java.awt.Dimension[width=0,height=0]] com.schneide.framework.gui.dialog.button.ValidatingDialogButton[name='Sichern', text='Sichern', enabled=true, visible=true, showing=true] javax.swing.Box$Filler[,262,28,5x0,alignmentX=0.0,alignmentY=0.0,border=,flags=0,maximumSize=java.awt.Dimension[width=5,height=0],minimumSize=java.awt.Dimension[width=5,height=0],preferredSize=java.awt.Dimension[width=5,height=0]] com.schneide.framework.gui.dialog.button.NonvalidatingDialogButton[name='Abbrechen', text='Abbrechen', enabled=true, visible=true, showing=true] at junit.framework.Assert.fail(Assert.java:47) at com.schneide.pontos.gui.AddContainerTest.testAddContainer(AddContainerTest.java:72) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:44) at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15) at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:41) at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:20) at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:28) at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:31) at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:73) at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:46) at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:180) at org.junit.runners.ParentRunner.access$000(ParentRunner.java:41) at org.junit.runners.ParentRunner$1.evaluate(ParentRunner.java:173) at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:28) at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:31) at org.junit.runners.ParentRunner.run(ParentRunner.java:220) at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:45) at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:460) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:673) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:386) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:196)