dooApp/FXForm2

Exception when using class validator

Closed this issue · 1 comments

When I have bean annotated with constraints validation, everytime I update a field in my form I get the following exception :

27 mai 2015-15:02:15.581 [JavaFX Application Thread] ERROR com.dooapp.dsdk.core.DsdkApplication - org.hibernate.validator.engine.NodeImpl.getKind()Ljavax/validation/ElementKind;
java.lang.AbstractMethodError: org.hibernate.validator.engine.NodeImpl.getKind()Ljavax/validation/ElementKind;
    at com.dooapp.fxform.validation.PropertyElementValidator.isRelated(PropertyElementValidator.java:114) ~[core-8.0.9.jar:na]
    at com.dooapp.fxform.validation.PropertyElementValidator.reportClassLevelConstraintViolation(PropertyElementValidator.java:95) ~[core-8.0.9.jar:na]
    at com.dooapp.fxform.validation.ClassLevelValidator.validate(ClassLevelValidator.java:70) ~[core-8.0.9.jar:na]
    at com.dooapp.fxform.controller.PropertyEditorController$2.changed(PropertyEditorController.java:84) ~[core-8.0.9.jar:na]
    at com.sun.javafx.binding.ExpressionHelper$SingleChange.fireValueChangedEvent(ExpressionHelper.java:182) ~[jfxrt.jar:na]
    at com.sun.javafx.binding.ExpressionHelper.fireValueChangedEvent(ExpressionHelper.java:81) ~[jfxrt.jar:na]
    at javafx.beans.property.IntegerPropertyBase.fireValueChangedEvent(IntegerPropertyBase.java:106) ~[jfxrt.jar:na]
    at javafx.beans.property.IntegerPropertyBase.markInvalid(IntegerPropertyBase.java:113) ~[jfxrt.jar:na]
    at javafx.beans.property.IntegerPropertyBase.set(IntegerPropertyBase.java:146) ~[jfxrt.jar:na]
    at javafx.beans.property.IntegerProperty.setValue(IntegerProperty.java:69) ~[jfxrt.jar:na]
    at javafx.beans.property.IntegerPropertyBase.setValue(IntegerPropertyBase.java:52) ~[jfxrt.jar:na]
    at com.dooapp.fxform.model.impl.PropertyMethodElement.setValue(PropertyMethodElement.java:34) ~[core-8.0.9.jar:na]
    at com.dooapp.fxform.controller.PropertyEditorController$1.changed(PropertyEditorController.java:70) ~[core-8.0.9.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.scene.control.TextInputControl$TextProperty.fireValueChangedEvent(TextInputControl.java:1123) ~[jfxrt.jar:na]
    at javafx.scene.control.TextInputControl$TextProperty.markInvalid(TextInputControl.java:1127) ~[jfxrt.jar:na]
    at javafx.scene.control.TextInputControl$TextProperty.invalidate(TextInputControl.java:1066) ~[jfxrt.jar:na]
    at javafx.scene.control.TextInputControl$TextProperty.access$1300(TextInputControl.java:1038) ~[jfxrt.jar:na]
    at javafx.scene.control.TextInputControl.lambda$new$163(TextInputControl.java:134) ~[jfxrt.jar:na]
    at javafx.scene.control.TextInputControl$$Lambda$258/11248838.invalidated(Unknown Source) ~[na:na]
    at com.sun.javafx.binding.ExpressionHelper$SingleInvalidation.fireValueChangedEvent(ExpressionHelper.java:137) ~[jfxrt.jar:na]
    at com.sun.javafx.binding.ExpressionHelper.fireValueChangedEvent(ExpressionHelper.java:81) ~[jfxrt.jar:na]
    at javafx.scene.control.TextField$TextFieldContent.insert(TextField.java:88) ~[jfxrt.jar:na]
    at javafx.scene.control.TextInputControl.replaceText(TextInputControl.java:467) ~[jfxrt.jar:na]
    at com.sun.javafx.scene.control.skin.TextFieldSkin.replaceText(TextFieldSkin.java:576) ~[jfxrt.jar:na]
    at com.sun.javafx.scene.control.behavior.TextFieldBehavior.replaceText(TextFieldBehavior.java:191) ~[jfxrt.jar:na]
    at com.sun.javafx.scene.control.behavior.TextInputControlBehavior.defaultKeyTyped(TextInputControlBehavior.java:250) ~[jfxrt.jar:na]
    at com.sun.javafx.scene.control.behavior.TextInputControlBehavior.callAction(TextInputControlBehavior.java:147) ~[jfxrt.jar:na]
    at com.sun.javafx.scene.control.behavior.BehaviorBase.callActionForEvent(BehaviorBase.java:218) ~[jfxrt.jar:na]
    at com.sun.javafx.scene.control.behavior.TextInputControlBehavior.callActionForEvent(TextInputControlBehavior.java:135) ~[jfxrt.jar:na]
    at com.sun.javafx.scene.control.behavior.BehaviorBase.lambda$new$74(BehaviorBase.java:135) ~[jfxrt.jar:na]
    at com.sun.javafx.scene.control.behavior.BehaviorBase$$Lambda$195/8405812.handle(Unknown Source) ~[na:na]
    at com.sun.javafx.event.CompositeEventHandler$NormalEventHandlerRecord.handleBubblingEvent(CompositeEventHandler.java:218) ~[jfxrt.jar:na]
    at com.sun.javafx.event.CompositeEventHandler.dispatchBubblingEvent(CompositeEventHandler.java:80) ~[jfxrt.jar:na]
    at com.sun.javafx.event.EventHandlerManager.dispatchBubblingEvent(EventHandlerManager.java:238) ~[jfxrt.jar:na]
    at com.sun.javafx.event.EventHandlerManager.dispatchBubblingEvent(EventHandlerManager.java:191) ~[jfxrt.jar:na]
    at com.sun.javafx.event.CompositeEventDispatcher.dispatchBubblingEvent(CompositeEventDispatcher.java:59) ~[jfxrt.jar:na]
    at com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:58) ~[jfxrt.jar:na]
    at com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:114) ~[jfxrt.jar:na]
    at com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:56) ~[jfxrt.jar:na]
    at com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:114) ~[jfxrt.jar:na]
    at com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:56) ~[jfxrt.jar:na]
    at com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:114) ~[jfxrt.jar:na]
    at com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:56) ~[jfxrt.jar:na]
    at com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:114) ~[jfxrt.jar:na]
    at com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:56) ~[jfxrt.jar:na]
    at com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:114) ~[jfxrt.jar:na]
    at com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:56) ~[jfxrt.jar:na]
    at com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:114) ~[jfxrt.jar:na]
    at com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:56) ~[jfxrt.jar:na]
    at com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:114) ~[jfxrt.jar:na]
    at com.sun.javafx.event.EventUtil.fireEventImpl(EventUtil.java:74) ~[jfxrt.jar:na]
    at com.sun.javafx.event.EventUtil.fireEvent(EventUtil.java:54) ~[jfxrt.jar:na]
    at javafx.event.Event.fireEvent(Event.java:198) ~[jfxrt.jar:na]
    at javafx.scene.Scene$KeyHandler.process(Scene.java:3931) ~[jfxrt.jar:na]
    at javafx.scene.Scene$KeyHandler.access$1800(Scene.java:3877) ~[jfxrt.jar:na]
    at javafx.scene.Scene.impl_processKeyEvent(Scene.java:2006) ~[jfxrt.jar:na]
    at javafx.scene.Scene$ScenePeerListener.keyEvent(Scene.java:2468) ~[jfxrt.jar:na]
    at com.sun.javafx.tk.quantum.GlassViewEventHandler$KeyEventNotification.run(GlassViewEventHandler.java:197) ~[jfxrt.jar:na]
    at com.sun.javafx.tk.quantum.GlassViewEventHandler$KeyEventNotification.run(GlassViewEventHandler.java:147) ~[jfxrt.jar:na]
    at java.security.AccessController.doPrivileged(Native Method) ~[na:1.8.0_25]
    at com.sun.javafx.tk.quantum.GlassViewEventHandler.handleKeyEvent(GlassViewEventHandler.java:227) ~[jfxrt.jar:na]
    at com.sun.glass.ui.View.handleKeyEvent(View.java:544) ~[jfxrt.jar:na]
    at com.sun.glass.ui.View.notifyKey(View.java:954) ~[jfxrt.jar:na]
    at com.sun.glass.ui.win.WinApplication._runLoop(Native Method) [jfxrt.jar:na]
    at com.sun.glass.ui.win.WinApplication.lambda$null$141(WinApplication.java:102) [jfxrt.jar:na]
    at com.sun.glass.ui.win.WinApplication$$Lambda$49/12978257.run(Unknown Source) [jfxrt.jar:na]
    at java.lang.Thread.run(Thread.java:745) [na:1.8.0_25]

To reproduce it, there is a simple case : https://gist.github.com/agonist/e7da156ce4808f3a5846

just write into the field to get the exception

I found my problem.

I was using hibernate validator version 4.1.0.Final

I update to 5.0.3.Final and it works fine now.