[
https://issues.apache.org/jira/browse/TAP5-2101?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13639146#comment-13639146
]
Alejandro Scandroli edited comment on TAP5-2101 at 4/23/13 3:16 PM:
--------------------------------------------------------------------
Here is the patch (against master):
- removed originalBeanValidationContext
- refactored BeanEditContext anonymous inner class to BeanEditContextImpl
was (Author: ascandroli):
Here is the patch:
- removed originalBeanValidationContext
- refactored BeanEditContext anonymous inner class to BeanEditContextImpl
> BeanEditor should always provide a new BeanValidationContext (JSR-303)
> ----------------------------------------------------------------------
>
> Key: TAP5-2101
> URL: https://issues.apache.org/jira/browse/TAP5-2101
> Project: Tapestry 5
> Issue Type: Bug
> Components: tapestry-beanvalidator
> Reporter: Luca Menegus
> Assignee: Kalle Korhonen
> Fix For: 5.3.7, 5.4
>
> Attachments: beaneditor-jsr303.patch, TAP5-2101-2.patch
>
>
> We found that the current BeanEditor implementation:
> * fails to beanvalidate (JSR-303) complex beans (beans that contain other
> beans)
> * fails to validate more than one bean in the same page (when more than one
> BeanEditor is present in teh page)
> The problem is that BeanEditor doesn't provide the correct
> BeanValidationContext to the validation framework.
> Given the following beans:
> public class ComplexBean {
> private SomeSimpleBean someSimpleBean;
> @NotNull private String simpleNotNullProperty;
> ...
> }
> public class SimpleBean {
> @Min(6) private int minValue;
> ..
> }
> One would expect that the following page would validate all the constraint
> from both ComplexBean and SimpleBean:
> <t:form validate="complexBean">
> <t:BeanEditor object="complexBean" />
> <t:BeanEditor object="complexBean.someSimpleBean" />
> ...
> Instead only ComplexBean.simpleNotNullProperty constraint is validated.
> Moreover not even:
> <t:form validate="this">
> <t:BeanEditor object="beanA" />
> <t:BeanEditor object=" beanB " />
> <t:form/>
> Is (bean)validating properly....
> BeanEditor should provide the validation framework with a new
> BeanValidationContext bound to the object being validated all the times.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira