[bv-dev] Value extraction open issue #2: per constraint ConstraintsApplyTo?

Matt Benson mbenson at apache.org
Fri Jan 13 11:23:15 EST 2017


On Fri, Jan 13, 2017 at 8:57 AM, Emmanuel Bernard <emmanuel at hibernate.org>
wrote:

> s/other/order from the JVM/
>
> > On 13 Jan 2017, at 15:54, Emmanuel Bernard <emmanuel at hibernate.org>
> wrote:
> >
> > I looked at that, and I’m not sure you are guaranteed to get an other.
> > Plus you have this problem
> >
> > @Min
> > @Min.List({@Min, @Min})
> > @Min
> > BooYahh foo;
> >
>

I would have thought the same; however per [1] order is guaranteed. Your
additional concern is still there. Maybe it would be cleaner to support
this using meta-constraint annotations.


> >> On 13 Jan 2017, at 15:22, Gunnar Morling <gunnar at hibernate.org> wrote:
> >>
> >> As a variation of Matt's idea, an optional index() parameter could be
> added:
> >>
> >>   @Size(1)
> >>   @Size(3)
> >>   @ApplyConstraintTo(constraint=Size.class, index=1,
> target=WRAPPED_VALUE)
> >>   List<String> nicknames;
> >>
> >> It could be omitted (via a default value of -1 or similar) if there is
> >> only one constraint of the type in question:
> >>
> >>   @NotNull
> >>   @Email
> >>   @ApplyConstraintTo(constraint=NotNull.class,
> target=ANNOTATED_ELEMENT)
> >>   Optional<String> email;
> >>
> >> Does the trick, though it's still a tad verbose.
> >>
> >>
> >> 2017-01-13 14:58 GMT+01:00 Emmanuel Bernard <emmanuel at hibernate.org>:
> >>>
> >>> On 13 Jan 2017, at 13:29, Guillaume Smet <guillaume.smet at gmail.com>
> wrote:
> >>>
> >>> On Fri, Jan 13, 2017 at 1:01 PM, Gunnar Morling <gunnar at hibernate.org>
> >>> wrote:
> >>>>
> >>>> Unfortunately, validationAppliesTo() is already taken:
> >>>>
> >>>> http://beanvalidation.org/latest-draft/spec/#
> constraintsdefinitionimplementation-constraintdefinition-
> validationappliesto
> >>>>
> >>>> It's used to distinguish between return value and cross-parameter
> >>>> constraints.
> >>>>
> >>>> Any other name I can think of right now would make up for much
> >>>> confusion with that option.
> >>>
> >>>
> >>> Too good to be true :).
> >>>
> >>> That being said, I'm wondering if we could reuse it and just add 2
> other
> >>> values to ConstraintTarget. All in all, it's the same concept. The
> default
> >>> being IMPLICIT is not too bad either.
> >>>
> >>>
> >>> Right I think it’s worth exploring.
> >>> I still like my group repurposing trick though even if it offenses the
> clean
> >>> camp :)
> >>>
>

I still can't figure out how you would use the group trick in conjunction
with validation of a "real" group.

Matt

[1] http://docs.oracle.com/javase/specs/jls/se8/html/jls-9.html#jls-9.7.5


> >>> _______________________________________________
> >>> beanvalidation-dev mailing list
> >>> beanvalidation-dev at lists.jboss.org
> >>> https://lists.jboss.org/mailman/listinfo/beanvalidation-dev
> >>
> >> _______________________________________________
> >> beanvalidation-dev mailing list
> >> beanvalidation-dev at lists.jboss.org
> >> https://lists.jboss.org/mailman/listinfo/beanvalidation-dev
> >
> >
> > _______________________________________________
> > beanvalidation-dev mailing list
> > beanvalidation-dev at lists.jboss.org
> > https://lists.jboss.org/mailman/listinfo/beanvalidation-dev
>
>
> _______________________________________________
> beanvalidation-dev mailing list
> beanvalidation-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/beanvalidation-dev
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/beanvalidation-dev/attachments/20170113/3fe54b8b/attachment-0001.html 


More information about the beanvalidation-dev mailing list