JFXtras / jfxtras

A supporting library for JavaFX, containing helper classes, extended layouts, controls and other interesting widgets.
http://jfxtras.org
Other
599 stars 123 forks source link

concurrent modification exception the first time the picker popup is opened from LocalDateTimeTextfield #8

Closed millmanorama closed 10 years ago

millmanorama commented 10 years ago

here is the stack trace

java.util.ConcurrentModificationException at java.util.WeakHashMap$HashIterator.nextEntry(WeakHashMap.java:806) at java.util.WeakHashMap$KeyIterator.next(WeakHashMap.java:839) at com.sun.javafx.css.StyleManager.userAgentStylesheetsChanged(StyleManager.java:1334) at com.sun.javafx.css.StyleManager.addUserAgentStylesheet(StyleManager.java:1168) at com.sun.javafx.css.StyleManager.addUserAgentStylesheet(StyleManager.java:1130) at javafx.scene.control.Control.impl_processCSS(Control.java:882) at javafx.scene.Parent.impl_processCSS(Parent.java:1270) at javafx.scene.Parent.impl_processCSS(Parent.java:1270) at javafx.scene.Node.processCSS(Node.java:8822) at javafx.scene.Scene.doCSSPass(Scene.java:523) at javafx.scene.Scene.preferredSize(Scene.java:1604) at javafx.scene.Scene.impl_preferredSize(Scene.java:1681) at javafx.stage.Window$9.invalidated(Window.java:753) at javafx.beans.property.BooleanPropertyBase.markInvalid(BooleanPropertyBase.java:109) at javafx.beans.property.BooleanPropertyBase.set(BooleanPropertyBase.java:143) at javafx.stage.Window.setShowing(Window.java:829) at javafx.stage.Window.show(Window.java:844) at javafx.stage.PopupWindow.showImpl(PopupWindow.java:443) at javafx.stage.PopupWindow.show(PopupWindow.java:391) at jfxtras.internal.scene.control.skin.CalendarTextFieldSkin.showPopup(CalendarTextFieldSkin.java:426) at jfxtras.internal.scene.control.skin.CalendarTextFieldSkin.lambda$createNodes$22(CalendarTextFieldSkin.java:188) at jfxtras.internal.scene.control.skin.CalendarTextFieldSkin$$Lambda$462/22264819.handle(Unknown Source) at com.sun.javafx.event.CompositeEventHandler.dispatchBubblingEvent(CompositeEventHandler.java:86) at com.sun.javafx.event.EventHandlerManager.dispatchBubblingEvent(EventHandlerManager.java:238) at com.sun.javafx.event.EventHandlerManager.dispatchBubblingEvent(EventHandlerManager.java:191) at com.sun.javafx.event.CompositeEventDispatcher.dispatchBubblingEvent(CompositeEventDispatcher.java:59) at com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:58) at com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:114) at com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:56) at com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:114) at com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:56) at com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:114) at com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:56) at com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:114) at com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:56) at com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:114) at com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:56) at com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:114) at com.sun.javafx.event.EventUtil.fireEventImpl(EventUtil.java:74) at com.sun.javafx.event.EventUtil.fireEvent(EventUtil.java:54) at javafx.event.Event.fireEvent(Event.java:198) at javafx.scene.Scene$ClickGenerator.postProcess(Scene.java:3432) at javafx.scene.Scene$ClickGenerator.access$8100(Scene.java:3360) at javafx.scene.Scene$MouseHandler.process(Scene.java:3728) at javafx.scene.Scene$MouseHandler.access$1500(Scene.java:3447) at javafx.scene.Scene.impl_processMouseEvent(Scene.java:1723) at javafx.scene.Scene$ScenePeerListener.mouseEvent(Scene.java:2456) at com.sun.javafx.tk.quantum.EmbeddedScene.lambda$null$266(EmbeddedScene.java:250) at com.sun.javafx.tk.quantum.EmbeddedScene$$Lambda$556/26073636.run(Unknown Source) at java.security.AccessController.doPrivileged(Native Method) at com.sun.javafx.tk.quantum.EmbeddedScene.lambda$mouseEvent$267(EmbeddedScene.java:238) at com.sun.javafx.tk.quantum.EmbeddedScene$$Lambda$195/18066906.run(Unknown Source) at com.sun.javafx.application.PlatformImpl.lambda$null$148(PlatformImpl.java:288) at com.sun.javafx.application.PlatformImpl$$Lambda$62/27023284.run(Unknown Source) at java.security.AccessController.doPrivileged(Native Method) at com.sun.javafx.application.PlatformImpl.lambda$runLater$149(PlatformImpl.java:287) at com.sun.javafx.application.PlatformImpl$$Lambda$61/12027038.run(Unknown Source) [catch] at com.sun.glass.ui.InvokeLaterDispatcher$Future.run(InvokeLaterDispatcher.java:95) at com.sun.glass.ui.win.WinApplication._runLoop(Native Method) at com.sun.glass.ui.win.WinApplication.lambda$null$126(WinApplication.java:102) at com.sun.glass.ui.win.WinApplication$$Lambda$52/3748619.run(Unknown Source) at java.lang.Thread.run(Thread.java:745)

tbee commented 10 years ago

I would prefer a scenario (how to generate the exception), because all tests are succeeding.

Tom

On 2014-6-6 22:50, jonathan millman wrote:

here is the stack trace

java.util.ConcurrentModificationException at java.util.WeakHashMap$HashIterator.nextEntry(WeakHashMap.java:806) at java.util.WeakHashMap$KeyIterator.next(WeakHashMap.java:839) at com.sun.javafx.css.StyleManager.userAgentStylesheetsChanged(StyleManager.java:1334) at com.sun.javafx.css.StyleManager.addUserAgentStylesheet(StyleManager.java:1168) at com.sun.javafx.css.StyleManager.addUserAgentStylesheet(StyleManager.java:1130) at javafx.scene.control.Control.impl_processCSS(Control.java:882) at javafx.scene.Parent.impl_processCSS(Parent.java:1270) at javafx.scene.Parent.impl_processCSS(Parent.java:1270) at javafx.scene.Node.processCSS(Node.java:8822) at javafx.scene.Scene.doCSSPass(Scene.java:523) at javafx.scene.Scene.preferredSize(Scene.java:1604) at javafx.scene.Scene.impl_preferredSize(Scene.java:1681) at javafx.stage.Window$9.invalidated(Window.java:753) at javafx.beans.property.BooleanPropertyBase.markInvalid(BooleanPropertyBase.java:109) at javafx.beans.property.BooleanPropertyBase.set(BooleanPropertyBase.java:143) at javafx.stage.Window.setShowing(Window.java:829) at javafx.stage.Window.show(Window.java:844) at javafx.stage.PopupWindow.showImpl(PopupWindow.java:443) at javafx.stage.PopupWindow.show(PopupWindow.java:391) at jfxtras.internal.scene.control.skin.CalendarTextFieldSkin.showPopup(CalendarTextFieldSkin.java:426) at jfxtras.internal.scene.control.skin.CalendarTextFieldSkin.lambda$createNodes$22(CalendarTextFieldSkin.java:188) at jfxtras.internal.scene.control.skin.CalendarTextFieldSkin$$Lambda$462/22264819.handle(Unknown Source) at com.sun.javafx.event.CompositeEventHandler.dispatchBubblingEvent(CompositeEventHandler.java:86) at com.sun.javafx.event.EventHandlerManager.dispatchBubblingEvent(EventHandlerManager.java:238) at com.sun.javafx.event.EventHandlerManager.dispatchBubblingEvent(EventHandlerManager.java:191) at com.sun.javafx.event.CompositeEventDispatcher.dispatchBubblingEvent(CompositeEventDispatcher.java:59) at com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:58) at com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:114) at com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:56) at com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:114) at com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:56) at com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:114) at com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:56) at com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:114) at com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:56) at com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:114) at com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:56) at com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:114) at com.sun.javafx.event.EventUtil.fireEventImpl(EventUtil.java:74) at com.sun.javafx.event.EventUtil.fireEvent(EventUtil.java:54) at javafx.event.Event.fireEvent(Event.java:198) at javafx.scene.Scene$ClickGenerator.postProcess(Scene.java:3432) at javafx.scene.Scene$ClickGenerator.access$8100(Scene.java:3360) at javafx.scene.Scene$MouseHandler.process(Scene.java:3728) at javafx.scene.Scene$MouseHandler.access$1500(Scene.java:3447) at javafx.scene.Scene.impl_processMouseEvent(Scene.java:1723) at javafx.scene.Scene$ScenePeerListener.mouseEvent(Scene.java:2456) at com.sun.javafx.tk.quantum.EmbeddedScene.lambda$null$266(EmbeddedScene.java:250) at com.sun.javafx.tk.quantum.EmbeddedScene$$Lambda$556/26073636.run(Unknown Source) at java.security.AccessController.doPrivileged(Native Method) at com.sun.javafx.tk.quantum.EmbeddedScene.lambda$mouseEvent$267(EmbeddedScene.java:238) at com.sun.javafx.tk.quantum.EmbeddedScene$$Lambda$195/18066906.run(Unknown Source) at com.sun.javafx.application.PlatformImpl.lambda$null$148(PlatformImpl.java:288) at com.sun.javafx.application.PlatformImpl$$Lambda$62/27023284.run(Unknown Source) at java.security.AccessController.doPrivileged(Native Method) at com.sun.javafx.application.PlatformImpl.lambda$runLater$149(PlatformImpl.java:287) at com.sun.javafx.application.PlatformImpl$$Lambda$61/12027038.run(Unknown Source) [catch] at com.sun.glass.ui.InvokeLaterDispatcher$Future.run(InvokeLaterDispatcher.java:95) at com.sun.glass.ui.win.WinApplication._runLoop(Native Method) at com.sun.glass.ui.win.WinApplication.lambda$null$126(WinApplication.java:102) at com.sun.glass.ui.win.WinApplication$$Lambda$52/3748619.run(Unknown Source) at java.lang.Thread.run(Thread.java:745)

— Reply to this email directly or view it on GitHub https://github.com/JFXtras/jfxtras/issues/8.

millmanorama commented 10 years ago

After some seemingly unrelated refactoring in my application this exception has gone away, so i assume the fault was there somewhere and not in jfxtras.