assertj / assertj/assertj-swing

Failures due to stopped timers in org.fest.swing.monitor.Windows

Open
#32 1 comment 0 reactions 0 assignees View on GitHub
bug Critical import from fest-swing
Dominant language
Java
Stars
121
Forks
52
PR merge metrics
No merged PRs in 30d

Description

_Issue by **[Martin Ginkel](http://jira.codehaus.org/secure/ViewProfile.jspa?name=mginkel)** from Tue, 18 May 2010 04:07:14 -0500_
_Originally opened as http://jira.codehaus.org/browse/FEST-346_

---

After the start of some GUI test an exception occurs (stacktrace below) and repeats a couple of times.

As far as I can tell, my test has no problems. At that point it is opening and closing

modal dialogs that display a progress-spinner in front of the main UI.

The problem happened 3 times on our CI system but is not reliably reproducable

(the other test runs were just fine).

The timer-thread that is apparently cancelled here, can only get to this state by being finalize()ed.

This is very strange, if the org.fest.swing.monitor.Windows is still alive. The junit test has just started, is working with a Robot.robotWithNewAwtHierarchy() within the first @Test method.


java.lang.IllegalStateException: Timer already cancelled.

at java.util.Timer.sched(Timer.java:354)
at java.util.Timer.schedule(Timer.java:170)
at org.fest.swing.monitor.Windows.markAsShowing(Windows.java:100)
at org.fest.swing.monitor.ContextMonitor.recognizeAsOpenWindow(ContextMonitor.java:92)
at org.fest.swing.monitor.ContextMonitor.processEvent(ContextMonitor.java:83)
at org.fest.swing.monitor.ContextMonitor.eventDispatched(ContextMonitor.java:64)
at org.fest.swing.listener.WeakEventListener.eventDispatched(WeakEventListener.java:80)
at java.awt.Toolkit$SelectiveAWTEventListener.eventDispatched(Toolkit.java:2353)
at java.awt.Toolkit$ToolkitEventMulticaster.eventDispatched(Toolkit.java:2244)
at java.awt.Toolkit$ToolkitEventMulticaster.eventDispatched(Toolkit.java:2244)
at java.awt.Toolkit$ToolkitEventMulticaster.eventDispatched(Toolkit.java:2244)
at java.awt.Toolkit$ToolkitEventMulticaster.eventDispatched(Toolkit.java:2244)
at java.awt.Toolkit$ToolkitEventMulticaster.eventDispatched(Toolkit.java:2244)
at java.awt.Toolkit$ToolkitEventMulticaster.eventDispatched(Toolkit.java:2244)
at java.awt.Toolkit.notifyAWTEventListeners(Toolkit.java:2203)
at java.awt.Component.dispatchEventImpl(Component.java:4528)
at java.awt.Container.dispatchEventImpl(Container.java:2099)
at java.awt.Window.dispatchEventImpl(Window.java:2478)
at java.awt.Component.dispatchEvent(Component.java:4460)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:599)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:178)
at java.awt.Dialog$1.run(Dialog.java:1046)
at java.awt.Dialog$3.run(Dialog.java:1098)
at java.security.AccessController.doPrivileged(Native Method)
at java.awt.Dialog.show(Dialog.java:1096)
at java.awt.Component.show(Component.java:1563)
at java.awt.Component.setVisible(Component.java:1515)
at java.awt.Window.setVisible(Window.java:842)
at java.awt.Dialog.setVisible(Dialog.java:986)
at genedata.screener.common.awt.BusyProgressDialog$2.run(BusyProgressDialog.java:119)
at genedata.util.threads.Threads.invokeInEDTAndWait(Threads.java:129)
at genedata.screener.common.awt.BusyProgressDialog.showDialog(BusyProgressDialog.java:115)
at genedata.screener.common.awt.DefaultProcessingHandler.showModalDialogAndWait(DefaultProcessingHandler.java:347)
at genedata.screener.common.awt.DefaultProcessingHandler.access$500(DefaultProcessingHandler.java:59)
at genedata.screener.common.awt.DefaultProcessingHandler$4.run(DefaultProcessingHandler.java:279)
at genedata.util.threads.Threads.invokeInEDTAndWait(Threads.java:129)
at genedata.screener.common.awt.DefaultProcessingHandler.runWithProgress(DefaultProcessingHandler.java:265)
at genedata.screener.common.awt.DefaultProcessingHandler.runWithSpinner(DefaultProcessingHandler.java:196)
at genedata.screener.common.gui.definition.EditExperimentWizardState.setCorporateIdentifierAndLoadAnnotationSchemes(EditExperimentWizardState.java:245)
at genedata.screener.aa.mgmnt.io.RawDataLoadingContext$1.promptForTarget(RawDataLoadingContext.java:74)
at genedata.screener.aa.mgmnt.io.IOManager.doLoad(IOManager.java:297)
at genedata.screener.aa.mgmnt.io.IOManager.loadExperimentData(IOManager.java:171)
at genedata.screener.aa.mgmnt.io.IOManager.loadRawData(IOManager.java:167)
at genedata.screener.aa.gui.actions.LoadExperimentDataFromFileAction.handledActionPerformed(LoadExperimentDataFromFileAction.java:28)
at genedata.screener.common.awt.actions.AbstractHandledAction.actionPerformed(AbstractHandledAction.java:31)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1995)
at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2318)
at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:387)
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:242)
at javax.swing.AbstractButton.doClick(AbstractButton.java:357)
at javax.swing.plaf.basic.BasicMenuItemUI.doClick(BasicMenuItemUI.java:1223)
at javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(BasicMenuItemUI.java:1264)
at java.awt.Component.processMouseEvent(Component.java:6263)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3267)
at java.awt.Component.processEvent(Component.java:6028)
at java.awt.Container.processEvent(Container.java:2041)
at java.awt.Component.dispatchEventImpl(Component.java:4630)
at java.awt.Container.dispatchEventImpl(Container.java:2099)
at java.awt.Component.dispatchEvent(Component.java:4460)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4574)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4238)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4168)
at java.awt.Container.dispatchEventImpl(Container.java:2085)
at java.awt.Window.dispatchEventImpl(Window.java:2478)
at java.awt.Component.dispatchEvent(Component.java:4460)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:599)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)

---

votes (original issue): 0
watches (original issue): 0

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.