dooApp/FXForm2

JavaFX thread exception is thrown when property is updated from another thread

Closed this issue · 0 comments

java.lang.IllegalStateException: Not on FX application thread; currentThread = JTP Slot 12
at com.sun.javafx.tk.Toolkit.checkFxUserThread(Toolkit.java:236) ~[jfxrt.jar:na]
at com.sun.javafx.tk.quantum.QuantumToolkit.checkFxUserThread(QuantumToolkit.java:423) ~[jfxrt.jar:na]
at javafx.scene.Parent$2.onProposedChange(Parent.java:367) ~[jfxrt.jar:na]
at com.sun.javafx.collections.VetoableListDecorator.clear(VetoableListDecorator.java:294) ~[jfxrt.jar:na]
at com.dooapp.fxform.view.control.ConstraintLabel$1.onChanged(ConstraintLabel.java:40) ~[core-8.2.2.jar:na]
at com.sun.javafx.binding.ListExpressionHelper$SingleListChange.fireValueChangedEvent(ListExpressionHelper.java:300) ~[jfxrt.jar:na]
at com.sun.javafx.binding.ListExpressionHelper.fireValueChangedEvent(ListExpressionHelper.java:109) ~[jfxrt.jar:na]
at javafx.beans.property.ListPropertyBase.fireValueChangedEvent(ListPropertyBase.java:200) ~[jfxrt.jar:na]
at javafx.beans.property.ListPropertyBase.lambda$new$29(ListPropertyBase.java:56) ~[jfxrt.jar:na]
at com.sun.javafx.collections.ListListenerHelper$Generic.fireValueChangedEvent(ListListenerHelper.java:329) ~[jfxrt.jar:na]
at com.sun.javafx.collections.ListListenerHelper.fireValueChangedEvent(ListListenerHelper.java:73) [jfxrt.jar:na]
at javafx.collections.FXCollections$SynchronizedObservableList.lambda$new$53(FXCollections.java:1178) [jfxrt.jar:na]
at javafx.collections.WeakListChangeListener.onChanged(WeakListChangeListener.java:88) ~[jfxrt.jar:na]
at com.sun.javafx.collections.ListListenerHelper$SingleChange.fireValueChangedEvent(ListListenerHelper.java:164) ~[jfxrt.jar:na]
at com.sun.javafx.collections.ListListenerHelper.fireValueChangedEvent(ListListenerHelper.java:73) [jfxrt.jar:na]
at javafx.collections.ObservableListBase.fireChange(ObservableListBase.java:233) ~[jfxrt.jar:na]
at javafx.collections.ListChangeBuilder.commit(ListChangeBuilder.java:482) ~[jfxrt.jar:na]
at javafx.collections.ListChangeBuilder.endChange(ListChangeBuilder.java:541) ~[jfxrt.jar:na]
at javafx.collections.ObservableListBase.endChange(ObservableListBase.java:205) ~[jfxrt.jar:na]
at javafx.collections.ModifiableObservableListBase.addAll(ModifiableObservableListBase.java:102) ~[jfxrt.jar:na]
at javafx.collections.FXCollections$SynchronizedList.addAll(FXCollections.java:1049) ~[jfxrt.jar:na]
at javafx.beans.binding.ListExpression.addAll(ListExpression.java:266) ~[jfxrt.jar:na]
at com.dooapp.fxform.validation.PropertyElementValidator.reportClassLevelConstraintViolation(PropertyElementValidator.java:100) ~[core-8.2.2.jar:na]
at com.dooapp.fxform.validation.ClassLevelValidator.validate(ClassLevelValidator.java:70) ~[core-8.2.2.jar:na]
at com.dooapp.fxform.controller.PropertyEditorController$2.changed(PropertyEditorController.java:99) ~[core-8.2.2.jar:na]
at com.sun.javafx.binding.ExpressionHelper$Generic.fireValueChangedEvent(ExpressionHelper.java:361) ~[jfxrt.jar:na]
at com.sun.javafx.binding.ExpressionHelper.fireValueChangedEvent(ExpressionHelper.java:81) ~[jfxrt.jar:na]
at javafx.beans.property.DoublePropertyBase.fireValueChangedEvent(DoublePropertyBase.java:106) ~[jfxrt.jar:na]
at javafx.beans.property.DoublePropertyBase.markInvalid(DoublePropertyBase.java:113) ~[jfxrt.jar:na]
at javafx.beans.property.DoublePropertyBase.set(DoublePropertyBase.java:147) ~[jfxrt.jar:na]