[jira] [Commented] (TAP5-2101) BeanEditor should always provide a new BeanValidationContext (JSR-303)

2013-04-23 Thread Hudson (JIRA)

[ 
https://issues.apache.org/jira/browse/TAP5-2101?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13639302#comment-13639302
 ] 

Hudson commented on TAP5-2101:
--

Integrated in tapestry-trunk-freestyle #1052 (See 
[https://builds.apache.org/job/tapestry-trunk-freestyle/1052/])
FIXED - TAP5-2101: BeanEditor should always provide a new (Revision 
349ef622030ed5f1bfb098829321f753b4e19843)

 Result = SUCCESS
kaosko : 
Files : 
* 
tapestry-core/src/main/java/org/apache/tapestry5/internal/BeanEditContextImpl.java
* 
tapestry-core/src/main/java/org/apache/tapestry5/corelib/components/BeanEditor.java
* 
tapestry-core/src/test/java/org/apache/tapestry5/corelib/components/BeanEditorTest.java


> 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:
> 
>   
>   
> ...
> Instead only ComplexBean.simpleNotNullProperty constraint is validated.
> Moreover not even:
>  
>  
>  
>  
> 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


[jira] [Commented] (TAP5-2101) BeanEditor should always provide a new BeanValidationContext (JSR-303)

2013-04-22 Thread Alejandro Scandroli (JIRA)

[ 
https://issues.apache.org/jira/browse/TAP5-2101?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13637884#comment-13637884
 ] 

Alejandro Scandroli commented on TAP5-2101:
---


I'm trying to leverage this to create an edit block for @Embedded properties 
(http://jira.codehaus.org/browse/TYNAMO-22).

One issue I found is that BeanEditContext and BeanValidationContext get out of 
sync on submit. When working with nested BeanEditors they return different 
classes, that is:
BeanEditContext.getBeanClass() != BeanValidationContext.getBeanType()

The issue is that the BeanEditContext anonymous inner class is "delegating" the 
call to the BeanEditor's model on the fly and the model changes. This could be 
easily solved by creating a BeanEditContextImpl that takes a Class in its 
constructor.

One other thing, I've also noticed that the Environment ends up with more 
BeanValidationContext in the stack than it should. If I'm not mistaken the 
stack should end up completely empty after the request. If that's the case, I 
think that the _originalBeanValidationContext_ push in 
BeanEditor.cleanupEnvironment() it's unnecessary. After all it is a stack so 
the previous BeanValidationContext is still there. 





> 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
>
>
> 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:
> 
>   
>   
> ...
> Instead only ComplexBean.simpleNotNullProperty constraint is validated.
> Moreover not even:
>  
>  
>  
>  
> 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


[jira] [Commented] (TAP5-2101) BeanEditor should always provide a new BeanValidationContext (JSR-303)

2013-04-16 Thread Hudson (JIRA)

[ 
https://issues.apache.org/jira/browse/TAP5-2101?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13632644#comment-13632644
 ] 

Hudson commented on TAP5-2101:
--

Integrated in tapestry-trunk-freestyle #1049 (See 
[https://builds.apache.org/job/tapestry-trunk-freestyle/1049/])
RESOLVED - TAP5-2101: BeanEditor should always provide a new (Revision 
e954445f990d6528ee3f2f0bc23a31b2a361ecd5)
RESOLVED - TAP5-2101: BeanEditor should always provide a new (Revision 
18b6f2be1c6c6a1842300944dd3bb18da27d91d0)
RESOLVED - TAP5-2101: BeanEditor should always provide a new (Revision 
cc0c541ab87970bf31be04c177c016fe16274628)

 Result = SUCCESS
kaosko : 
Files : 
* 
tapestry-core/src/test/java/org/apache/tapestry5/corelib/components/BeanEditorTest.java

kaosko : 
Files : 
* 
tapestry-core/src/test/java/org/apache/tapestry5/corelib/components/BeanEditorTest.java

kaosko : 
Files : 
* 
tapestry-core/src/test/java/org/apache/tapestry5/corelib/components/BeanEditorTest.java


> 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
>
>
> 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:
> 
>   
>   
> ...
> Instead only ComplexBean.simpleNotNullProperty constraint is validated.
> Moreover not even:
>  
>  
>  
>  
> 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


[jira] [Commented] (TAP5-2101) BeanEditor should always provide a new BeanValidationContext (JSR-303)

2013-04-13 Thread Hudson (JIRA)

[ 
https://issues.apache.org/jira/browse/TAP5-2101?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13631280#comment-13631280
 ] 

Hudson commented on TAP5-2101:
--

Integrated in tapestry-trunk-freestyle #1044 (See 
[https://builds.apache.org/job/tapestry-trunk-freestyle/1044/])
FIXED - TAP5-2101: BeanEditor should always provide a new (Revision 
cb95e2236873b497211427e89f96e54282919e19)

 Result = FAILURE
kaosko : 
Files : 
* 
tapestry-beanvalidator/src/test/java/org/apache/tapestry5/beanvalidator/integration/TapestryBeanValidationIntegrationTests.java
* 
tapestry-beanvalidator/src/test/java/org/example/testapp/entities/SomeOtherSimpleBean.java
* tapestry-beanvalidator/src/test/webapp/Index.tml
* 
tapestry-beanvalidator/src/test/java/org/example/testapp/entities/ComplexBean.java
* 
tapestry-beanvalidator/src/test/java/org/example/testapp/entities/SomeSimpleBean.java
* 
tapestry-beanvalidator/src/test/java/org/example/testapp/pages/ComplexBeanDemo.java
* tapestry-beanvalidator/src/test/webapp/ComplexBeanDemo.tml
* 
tapestry-core/src/main/java/org/apache/tapestry5/corelib/components/BeanEditor.java


> 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
>
>
> 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:
> 
>   
>   
> ...
> Instead only ComplexBean.simpleNotNullProperty constraint is validated.
> Moreover not even:
>  
>  
>  
>  
> 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


[jira] [Commented] (TAP5-2101) BeanEditor should always provide a new BeanValidationContext (JSR-303)

2013-04-13 Thread Kalle Korhonen (JIRA)

[ 
https://issues.apache.org/jira/browse/TAP5-2101?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13631275#comment-13631275
 ] 

Kalle Korhonen commented on TAP5-2101:
--

Applied, thanks Luca!

> 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
>
>
> 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:
> 
>   
>   
> ...
> Instead only ComplexBean.simpleNotNullProperty constraint is validated.
> Moreover not even:
>  
>  
>  
>  
> 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