-
Bug
-
Resolution: Cannot Reproduce
-
P3
-
fx2.0
-
Windows, Mac
In the VT, in order to force CSS Engine to bootsrap, we are calling this internal method. We do understand that it is not a supported API.
In some cases, diffcult to isolate, we are entering into an infinite loop and a bunch of stacks are displayed (some ClassCast exceptions.).
I am copying a subset of the traces logged when we do enter the infinite loop.
Calling impl_reapplyCSS in the next tick (thanks to a timeline keyframe), we do not enter the inifinite loop.
WARNING: com.sun.javafx.css.StyleHelper lookup caught:
java.lang.ClassCastException: java.lang.String cannot be cast to javafx.scene.paint.Paint
at com.sun.javafx.css.converters.PaintConverter$SequenceConverter.convert(PaintConverter.java:71)
at com.sun.javafx.css.converters.PaintConverter$SequenceConverter.convert(PaintConverter.java:56)
at com.sun.javafx.css.Value.convert(Value.java:243)
at com.sun.javafx.css.StyleHelper.lookup(StyleHelper.java:899)
at com.sun.javafx.css.StyleHelper.lookup(StyleHelper.java:854)
at com.sun.javafx.css.StyleHelper.transitionToState(StyleHelper.java:686)
at javafx.scene.Node.impl_processCSS(Node.java:6194)
at javafx.scene.Parent.impl_processCSS(Parent.java:965)
at javafx.scene.Parent.impl_processCSS(Parent.java:972)
at javafx.scene.control.Control.impl_processCSS(Control.java:1002)
at com.oracle.javafx.authoring.Deprecation.processCSS(Deprecation.java:98)
at com.oracle.javafx.authoring.css.CssUtils.resetStyle(CssUtils.java:472)
at com.oracle.javafx.authoring.css.CssUtils.resetCssState(CssUtils.java:457)
at com.oracle.javafx.authoring.css.CssUtils.applyCss(CssUtils.java:541)
at com.oracle.javafx.authoring.runtime.ComponentState.applyStateValuesRecursively(ComponentState.java:171)
at com.oracle.javafx.authoring.runtime.ComponentState.doApplyStateValuesRecursively(ComponentState.java:183)
at com.oracle.javafx.authoring.runtime.ComponentState.applyStateValuesRecursively(ComponentState.java:170)
at com.oracle.javafx.authoring.runtime.ComponentState.doApplyStateValuesRecursively(ComponentState.java:183)
at com.oracle.javafx.authoring.runtime.ComponentState.applyStateValuesRecursively(ComponentState.java:170)
at com.oracle.javafx.authoring.runtime.ComponentState.reset(ComponentState.java:87)
at com.oracle.javafx.authoring.runtime.ElementStates.refreshContained(ElementStates.java:700)
at com.oracle.javafx.authoring.Project.refreshCss(Project.java:303)
at com.oracle.javafx.authoring.Project.checkForUpdates(Project.java:294)
at com.oracle.javafx.authoring.FocusContext$2.invalidated(FocusContext.java:165)
at com.sun.javafx.binding.ExpressionHelper$MultipleInvalidation.fireValueChangedEvent(ExpressionHelper.java:301)
at com.sun.javafx.binding.ExpressionHelper.fireValueChangedEvent(ExpressionHelper.java:64)
at javafx.beans.property.ReadOnlyBooleanWrapper$ReadOnlyPropertyImpl.fireValueChangedEvent(ReadOnlyBooleanWrapper.java:156)
at javafx.beans.property.ReadOnlyBooleanWrapper$ReadOnlyPropertyImpl.access$100(ReadOnlyBooleanWrapper.java:126)
at javafx.beans.property.ReadOnlyBooleanWrapper.fireValueChangedEvent(ReadOnlyBooleanWrapper.java:122)
at javafx.beans.property.BooleanPropertyBase.markInvalid(BooleanPropertyBase.java:89)
at javafx.beans.property.BooleanPropertyBase.set(BooleanPropertyBase.java:122)
at javafx.stage.Window.setFocused(Window.java:331)
at com.sun.javafx.stage.WindowPeerListener.changedFocused(WindowPeerListener.java:67)
at com.sun.javafx.tk.quantum.GlassWindowEventHandler.handleWindowEvent(GlassWindowEventHandler.java:47)
at com.sun.glass.ui.Window.handleWindowEvent(Window.java:889)
at com.sun.glass.ui.Window.notifyFocus(Window.java:868)
at com.sun.glass.ui.win.WinApplication._runLoop(Native Method)
at com.sun.glass.ui.win.WinApplication.access$100(WinApplication.java:29)
at com.sun.glass.ui.win.WinApplication$2$1.run(WinApplication.java:62)
at java.lang.Thread.run(Thread.java:662)
WARNING: com.sun.javafx.css.StyleHelper lookup styleable = 'artificial' StyleableProperty {property: -fx-background-color, converter: Paint.SequenceConverter, initialValue: <Value>
<value values="1">
<Value>
<value>Color[red=0,green=0,blue=0,opacity=1.0]</value>
<converter>null</converter>
</Value>
</value>
<converter>Paint.SequenceConverter</converter>
</Value>
}
WARNING: com.sun.javafx.css.StyleHelper lookup resolved = <Value>
<value values="2">
<Value lookup="true">
<value>-fx-box-border</value>
<converter>null</converter>
</Value>
<Value lookup="true">
<value>-fx-control-inner-background</value>
<converter>null</converter>
</Value>
</value>
<converter>Paint.SequenceConverter</converter>
</Value>
WARNING: com.sun.javafx.css.StyleHelper lookup node = TreeViewSkin[id=tree, styleClass=tree-view]
WARNING: com.sun.javafx.css.StyleHelper lookup caught:
java.lang.ClassCastException: java.lang.String cannot be cast to com.sun.javafx.css.Value
at com.sun.javafx.css.converters.PaintConverter.convert(PaintConverter.java:45)
at com.sun.javafx.css.converters.PaintConverter.convert(PaintConverter.java:21)
at com.sun.javafx.css.StyleHelper.lookup(StyleHelper.java:901)
at com.sun.javafx.css.StyleHelper.transitionToState(StyleHelper.java:686)
at javafx.scene.Node.impl_processCSS(Node.java:6194)
at javafx.scene.Parent.impl_processCSS(Parent.java:965)
at javafx.scene.control.Control.impl_processCSS(Control.java:1002)
at javafx.scene.Parent.impl_processCSS(Parent.java:972)
at javafx.scene.Parent.impl_processCSS(Parent.java:972)
at javafx.scene.Parent.impl_processCSS(Parent.java:972)
at javafx.scene.Parent.impl_processCSS(Parent.java:972)
at javafx.scene.Parent.impl_processCSS(Parent.java:972)
at javafx.scene.Parent.impl_processCSS(Parent.java:972)
at javafx.scene.control.Control.impl_processCSS(Control.java:1002)
at com.oracle.javafx.authoring.Deprecation.processCSS(Deprecation.java:98)
at com.oracle.javafx.authoring.css.CssUtils.resetStyle(CssUtils.java:472)
at com.oracle.javafx.authoring.css.CssUtils.resetCssState(CssUtils.java:457)
at com.oracle.javafx.authoring.css.CssUtils.applyCss(CssUtils.java:541)
at com.oracle.javafx.authoring.runtime.ComponentState.applyStateValuesRecursively(ComponentState.java:171)
at com.oracle.javafx.authoring.runtime.ComponentState.doApplyStateValuesRecursively(ComponentState.java:183)
at com.oracle.javafx.authoring.runtime.ComponentState.applyStateValuesRecursively(ComponentState.java:170)
at com.oracle.javafx.authoring.runtime.ComponentState.doApplyStateValuesRecursively(ComponentState.java:183)
at com.oracle.javafx.authoring.runtime.ComponentState.applyStateValuesRecursively(ComponentState.java:170)
at com.oracle.javafx.authoring.runtime.ComponentState.reset(ComponentState.java:87)
at com.oracle.javafx.authoring.runtime.ElementStates.refreshContained(ElementStates.java:700)
at com.oracle.javafx.authoring.Project.refreshCss(Project.java:303)
at com.oracle.javafx.authoring.Project.checkForUpdates(Project.java:294)
at com.oracle.javafx.authoring.FocusContext$2.invalidated(FocusContext.java:165)
at com.sun.javafx.binding.ExpressionHelper$MultipleInvalidation.fireValueChangedEvent(ExpressionHelper.java:301)
at com.sun.javafx.binding.ExpressionHelper.fireValueChangedEvent(ExpressionHelper.java:64)
at javafx.beans.property.ReadOnlyBooleanWrapper$ReadOnlyPropertyImpl.fireValueChangedEvent(ReadOnlyBooleanWrapper.java:156)
at javafx.beans.property.ReadOnlyBooleanWrapper$ReadOnlyPropertyImpl.access$100(ReadOnlyBooleanWrapper.java:126)
at javafx.beans.property.ReadOnlyBooleanWrapper.fireValueChangedEvent(ReadOnlyBooleanWrapper.java:122)
at javafx.beans.property.BooleanPropertyBase.markInvalid(BooleanPropertyBase.java:89)
at javafx.beans.property.BooleanPropertyBase.set(BooleanPropertyBase.java:122)
at javafx.stage.Window.setFocused(Window.java:331)
at com.sun.javafx.stage.WindowPeerListener.changedFocused(WindowPeerListener.java:67)
at com.sun.javafx.tk.quantum.GlassWindowEventHandler.handleWindowEvent(GlassWindowEventHandler.java:47)
at com.sun.glass.ui.Window.handleWindowEvent(Window.java:889)
at com.sun.glass.ui.Window.notifyFocus(Window.java:868)
at com.sun.glass.ui.win.WinApplication._runLoop(Native Method)
at com.sun.glass.ui.win.WinApplication.access$100(WinApplication.java:29)
at com.sun.glass.ui.win.WinApplication$2$1.run(WinApplication.java:62)
at java.lang.Thread.run(Thread.java:662)
WARNING: com.sun.javafx.css.StyleHelper lookup styleable = StyleableProperty {owningClass: javafx.scene.control.Labeled, fieldName: textFill, property: -fx-text-fill, converter: PaintConverter, initialValue: 'black', inherits: true, subProperties: []}
WARNING: com.sun.javafx.css.StyleHelper lookup resolved = <Value lookup="true">
In some cases, diffcult to isolate, we are entering into an infinite loop and a bunch of stacks are displayed (some ClassCast exceptions.).
I am copying a subset of the traces logged when we do enter the infinite loop.
Calling impl_reapplyCSS in the next tick (thanks to a timeline keyframe), we do not enter the inifinite loop.
WARNING: com.sun.javafx.css.StyleHelper lookup caught:
java.lang.ClassCastException: java.lang.String cannot be cast to javafx.scene.paint.Paint
at com.sun.javafx.css.converters.PaintConverter$SequenceConverter.convert(PaintConverter.java:71)
at com.sun.javafx.css.converters.PaintConverter$SequenceConverter.convert(PaintConverter.java:56)
at com.sun.javafx.css.Value.convert(Value.java:243)
at com.sun.javafx.css.StyleHelper.lookup(StyleHelper.java:899)
at com.sun.javafx.css.StyleHelper.lookup(StyleHelper.java:854)
at com.sun.javafx.css.StyleHelper.transitionToState(StyleHelper.java:686)
at javafx.scene.Node.impl_processCSS(Node.java:6194)
at javafx.scene.Parent.impl_processCSS(Parent.java:965)
at javafx.scene.Parent.impl_processCSS(Parent.java:972)
at javafx.scene.control.Control.impl_processCSS(Control.java:1002)
at com.oracle.javafx.authoring.Deprecation.processCSS(Deprecation.java:98)
at com.oracle.javafx.authoring.css.CssUtils.resetStyle(CssUtils.java:472)
at com.oracle.javafx.authoring.css.CssUtils.resetCssState(CssUtils.java:457)
at com.oracle.javafx.authoring.css.CssUtils.applyCss(CssUtils.java:541)
at com.oracle.javafx.authoring.runtime.ComponentState.applyStateValuesRecursively(ComponentState.java:171)
at com.oracle.javafx.authoring.runtime.ComponentState.doApplyStateValuesRecursively(ComponentState.java:183)
at com.oracle.javafx.authoring.runtime.ComponentState.applyStateValuesRecursively(ComponentState.java:170)
at com.oracle.javafx.authoring.runtime.ComponentState.doApplyStateValuesRecursively(ComponentState.java:183)
at com.oracle.javafx.authoring.runtime.ComponentState.applyStateValuesRecursively(ComponentState.java:170)
at com.oracle.javafx.authoring.runtime.ComponentState.reset(ComponentState.java:87)
at com.oracle.javafx.authoring.runtime.ElementStates.refreshContained(ElementStates.java:700)
at com.oracle.javafx.authoring.Project.refreshCss(Project.java:303)
at com.oracle.javafx.authoring.Project.checkForUpdates(Project.java:294)
at com.oracle.javafx.authoring.FocusContext$2.invalidated(FocusContext.java:165)
at com.sun.javafx.binding.ExpressionHelper$MultipleInvalidation.fireValueChangedEvent(ExpressionHelper.java:301)
at com.sun.javafx.binding.ExpressionHelper.fireValueChangedEvent(ExpressionHelper.java:64)
at javafx.beans.property.ReadOnlyBooleanWrapper$ReadOnlyPropertyImpl.fireValueChangedEvent(ReadOnlyBooleanWrapper.java:156)
at javafx.beans.property.ReadOnlyBooleanWrapper$ReadOnlyPropertyImpl.access$100(ReadOnlyBooleanWrapper.java:126)
at javafx.beans.property.ReadOnlyBooleanWrapper.fireValueChangedEvent(ReadOnlyBooleanWrapper.java:122)
at javafx.beans.property.BooleanPropertyBase.markInvalid(BooleanPropertyBase.java:89)
at javafx.beans.property.BooleanPropertyBase.set(BooleanPropertyBase.java:122)
at javafx.stage.Window.setFocused(Window.java:331)
at com.sun.javafx.stage.WindowPeerListener.changedFocused(WindowPeerListener.java:67)
at com.sun.javafx.tk.quantum.GlassWindowEventHandler.handleWindowEvent(GlassWindowEventHandler.java:47)
at com.sun.glass.ui.Window.handleWindowEvent(Window.java:889)
at com.sun.glass.ui.Window.notifyFocus(Window.java:868)
at com.sun.glass.ui.win.WinApplication._runLoop(Native Method)
at com.sun.glass.ui.win.WinApplication.access$100(WinApplication.java:29)
at com.sun.glass.ui.win.WinApplication$2$1.run(WinApplication.java:62)
at java.lang.Thread.run(Thread.java:662)
WARNING: com.sun.javafx.css.StyleHelper lookup styleable = 'artificial' StyleableProperty {property: -fx-background-color, converter: Paint.SequenceConverter, initialValue: <Value>
<value values="1">
<Value>
<value>Color[red=0,green=0,blue=0,opacity=1.0]</value>
<converter>null</converter>
</Value>
</value>
<converter>Paint.SequenceConverter</converter>
</Value>
}
WARNING: com.sun.javafx.css.StyleHelper lookup resolved = <Value>
<value values="2">
<Value lookup="true">
<value>-fx-box-border</value>
<converter>null</converter>
</Value>
<Value lookup="true">
<value>-fx-control-inner-background</value>
<converter>null</converter>
</Value>
</value>
<converter>Paint.SequenceConverter</converter>
</Value>
WARNING: com.sun.javafx.css.StyleHelper lookup node = TreeViewSkin[id=tree, styleClass=tree-view]
WARNING: com.sun.javafx.css.StyleHelper lookup caught:
java.lang.ClassCastException: java.lang.String cannot be cast to com.sun.javafx.css.Value
at com.sun.javafx.css.converters.PaintConverter.convert(PaintConverter.java:45)
at com.sun.javafx.css.converters.PaintConverter.convert(PaintConverter.java:21)
at com.sun.javafx.css.StyleHelper.lookup(StyleHelper.java:901)
at com.sun.javafx.css.StyleHelper.transitionToState(StyleHelper.java:686)
at javafx.scene.Node.impl_processCSS(Node.java:6194)
at javafx.scene.Parent.impl_processCSS(Parent.java:965)
at javafx.scene.control.Control.impl_processCSS(Control.java:1002)
at javafx.scene.Parent.impl_processCSS(Parent.java:972)
at javafx.scene.Parent.impl_processCSS(Parent.java:972)
at javafx.scene.Parent.impl_processCSS(Parent.java:972)
at javafx.scene.Parent.impl_processCSS(Parent.java:972)
at javafx.scene.Parent.impl_processCSS(Parent.java:972)
at javafx.scene.Parent.impl_processCSS(Parent.java:972)
at javafx.scene.control.Control.impl_processCSS(Control.java:1002)
at com.oracle.javafx.authoring.Deprecation.processCSS(Deprecation.java:98)
at com.oracle.javafx.authoring.css.CssUtils.resetStyle(CssUtils.java:472)
at com.oracle.javafx.authoring.css.CssUtils.resetCssState(CssUtils.java:457)
at com.oracle.javafx.authoring.css.CssUtils.applyCss(CssUtils.java:541)
at com.oracle.javafx.authoring.runtime.ComponentState.applyStateValuesRecursively(ComponentState.java:171)
at com.oracle.javafx.authoring.runtime.ComponentState.doApplyStateValuesRecursively(ComponentState.java:183)
at com.oracle.javafx.authoring.runtime.ComponentState.applyStateValuesRecursively(ComponentState.java:170)
at com.oracle.javafx.authoring.runtime.ComponentState.doApplyStateValuesRecursively(ComponentState.java:183)
at com.oracle.javafx.authoring.runtime.ComponentState.applyStateValuesRecursively(ComponentState.java:170)
at com.oracle.javafx.authoring.runtime.ComponentState.reset(ComponentState.java:87)
at com.oracle.javafx.authoring.runtime.ElementStates.refreshContained(ElementStates.java:700)
at com.oracle.javafx.authoring.Project.refreshCss(Project.java:303)
at com.oracle.javafx.authoring.Project.checkForUpdates(Project.java:294)
at com.oracle.javafx.authoring.FocusContext$2.invalidated(FocusContext.java:165)
at com.sun.javafx.binding.ExpressionHelper$MultipleInvalidation.fireValueChangedEvent(ExpressionHelper.java:301)
at com.sun.javafx.binding.ExpressionHelper.fireValueChangedEvent(ExpressionHelper.java:64)
at javafx.beans.property.ReadOnlyBooleanWrapper$ReadOnlyPropertyImpl.fireValueChangedEvent(ReadOnlyBooleanWrapper.java:156)
at javafx.beans.property.ReadOnlyBooleanWrapper$ReadOnlyPropertyImpl.access$100(ReadOnlyBooleanWrapper.java:126)
at javafx.beans.property.ReadOnlyBooleanWrapper.fireValueChangedEvent(ReadOnlyBooleanWrapper.java:122)
at javafx.beans.property.BooleanPropertyBase.markInvalid(BooleanPropertyBase.java:89)
at javafx.beans.property.BooleanPropertyBase.set(BooleanPropertyBase.java:122)
at javafx.stage.Window.setFocused(Window.java:331)
at com.sun.javafx.stage.WindowPeerListener.changedFocused(WindowPeerListener.java:67)
at com.sun.javafx.tk.quantum.GlassWindowEventHandler.handleWindowEvent(GlassWindowEventHandler.java:47)
at com.sun.glass.ui.Window.handleWindowEvent(Window.java:889)
at com.sun.glass.ui.Window.notifyFocus(Window.java:868)
at com.sun.glass.ui.win.WinApplication._runLoop(Native Method)
at com.sun.glass.ui.win.WinApplication.access$100(WinApplication.java:29)
at com.sun.glass.ui.win.WinApplication$2$1.run(WinApplication.java:62)
at java.lang.Thread.run(Thread.java:662)
WARNING: com.sun.javafx.css.StyleHelper lookup styleable = StyleableProperty {owningClass: javafx.scene.control.Labeled, fieldName: textFill, property: -fx-text-fill, converter: PaintConverter, initialValue: 'black', inherits: true, subProperties: []}
WARNING: com.sun.javafx.css.StyleHelper lookup resolved = <Value lookup="true">