From: Emmanuel B. (JIRA) <no...@at...> - 2006-05-18 13:16:19
|
[ http://opensource.atlassian.com/projects/hibernate/browse/ANN-344?page=all ] Emmanuel Bernard updated ANN-344: --------------------------------- Component: validator type: Improvement (was: Bug) Version: 3.2.0.cr1 Priority: Major > Base class validations are not over-ridden > ------------------------------------------ > > Key: ANN-344 > URL: http://opensource.atlassian.com/projects/hibernate/browse/ANN-344 > Project: Hibernate Annotations > Type: Improvement > Components: validator > Versions: 3.2.0.cr1 > Environment: hibernate 3.2 cr2 > Reporter: Aseel Abbas > > > When the same validation annotation is applied to an over-riding method in a subclass the expected behaviour is that the validation annotation in the base class is over-ridden. Currently, both validations are executed. This severely limits the usability of the package for domain models where inheritance is used. > The problem also occurs with over-riding interfaces. > For example: > class A { > @Length (min = 0, max = 32) > Integer getFoo() { > return foo; > } > } > class B extends A > { > @Length (min = 15, max = 20) > Integer getFoo() { > return super.getFoo(); > } > } > In this case validating an instance of class B which has a foo value of 100 will result in two error messages: "foo must be between 15 and 20" and "foo must be between 0 and 32". -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://opensource.atlassian.com/projects/hibernate/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira |