[
https://issues.apache.org/jira/browse/BVAL-12?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12852283#action_12852283
]
Roman Stumm commented on BVAL-12:
---------------------------------
HI Carlos,
thanks for the improvements! I will have a closer look at them these days. But,
you know what? I never took my experiments with method-level-validation
seriously. It was just a trial implementation, to see, how much effort the real
thing would be (and because i did not see such features in the reference
implementation ;-) ) So I am not surprised, that it does not yet work
properly. Also there have to be much more tests of it.
Besides: i never checked the test coverage of the project so far. Would be nice
if someone could help here with the configuration of a maven-plugin to see,
where additional tests are missing.
Bye,
Roman
> Current implementation of method validation (appendix C of JSR-303) doesn't
> work with some constraints
> ------------------------------------------------------------------------------------------------------
>
> Key: BVAL-12
> URL: https://issues.apache.org/jira/browse/BVAL-12
> Project: BeanValidation
> Issue Type: Improvement
> Components: jsr303
> Affects Versions: 0.1-incubating
> Reporter: Carlos Vara
> Assignee: Roman Stumm
> Attachments: method-validation.diff, ParameterAccess.java,
> ReturnAccess.java
>
> Original Estimate: 0.5h
> Remaining Estimate: 0.5h
>
> The methods processAnnotation and processAnnotations in
> MethodValidatorMetaBeanFactory don't have enough information to infer the the
> parameter/return value types, so they default to the type of the class that
> contains the methods. Because of this, the selection of the correct validator
> throws an exception (for example with a @Size constraint), or works in a
> suboptimal manner (it always selects NotEmptyValidator instead of for
> example NotEmptyValidatorForString when validating a String).
> To fix it, I have created two new AccessStrategies (ParameterAccess and
> ReturnAccess), and modified the processAnnotation and processAnnotations
> signatures to take the strategies as parameters so they can pass them to the
> Jsr303MetaBeanFactory.applyConstraint method (which at the moment receives a
> null).
> I attach the fix, along with a few more tests that check that constraints
> such as @Size or @Pattern can be applied to method parameters and return
> types.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.