I and a few others have been working on a proposal to support things
like Collection<@Email String> and Optional<@Email String>. This is
more complicated that it seems at first glance.
Instead of doing an ad-hoc support for the various collection types,
Optional and the JavaFX Properties, we quickly decided to define the
notion of container and the ability to declare constraints on contained
elements to validate them.
This lead to two main proposals that you can read at
This is a relatively long read, you can start by ignoring "alternative"
options for your first pass. We are very interested in feedback at this
stage as we have been pushing these proposal very far already and they
would need to become part of the spec as next step.
Let me know of what you think, questions, remarks etc.
In particular, I'm interested in what you think of the following.
The capability to define custom containers.
The extractor approach vs its alternative.
The concepts of @ConstraintsAppliesTo(COMTAINED) used for JavaFX and for
subclasses of containers.
@Valid, in particular the legacy and new forms and how to handle the
And finally, but a big one, what do you think of proposal 1 vs proposal
2. The latter being more generic but with more open questions (and a
less elaborated at this stage).