[Hibernate-JIRA] Created: (HV-388) Support property level ScriptAssert
by jason shi (JIRA)
Support property level ScriptAssert
-----------------------------------
Key: HV-388
URL: http://opensource.atlassian.com/projects/hibernate/browse/HV-388
Project: Hibernate Validator
Issue Type: New Feature
Components: engine
Affects Versions: 4.1.0.Final
Reporter: jason shi
Assignee: Hardy Ferentschik
Current hibernate validator's ScriptAssert can only defined on the Class level, not property level.
In OVal,it can define the ScriptAssert at the property level,eg:
{code}
public class BusinessObject
{
@NotNull
public String deliveryAddress;
@NotNull public String invoiceAddress;
// mailingAddress must either be the delivery address or the invoice address
@Assert(expr = "_value ==_this.deliveryAddress || _value == _this.invoiceAddress", lang = "groovy")
public String mailingAddress;
}
{code}
With property level,we can get following benefit:
1. Can be used in single property validation, It's very useful in UI layer validation
2. The validation rule is close to the property definition, it's easy to manage
In JSR303 spec, the ValueContext is not passed to the Contrain Validator as a parameter,
so the validator can't get the "Current Bean" of the current property to be validated.
The validation engine need to some special work to support this feature.
OVal can do this, so it won't be a problem for hibernate validator.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://opensource.atlassian.com/projects/hibernate/secure/Administrators....
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
12 years, 10 months
[Hibernate-JIRA] Created: (HV-356) Consider if issue when bean's hashCode() uses lazy-loaded property needs to be addressed in default event listener/validator implementation
by Roman Arkadijovych Muntyanu (JIRA)
Consider if issue when bean's hashCode() uses lazy-loaded property needs to be addressed in default event listener/validator implementation
-------------------------------------------------------------------------------------------------------------------------------------------
Key: HV-356
URL: http://opensource.atlassian.com/projects/hibernate/browse/HV-356
Project: Hibernate Validator
Issue Type: Task
Components: validators
Affects Versions: 4.1.0.Final
Environment: Hibernate 3.5.3-Final, Spring 3.0.3.RELEASE, Hibernate Validator 4.1.0.Final
Reporter: Roman Arkadijovych Muntyanu
Assignee: Hardy Ferentschik
Priority: Minor
This issue has been created based on contributor's request in discussion
https://forum.hibernate.org/viewtopic.php?f=9&t=1006194&start=0
related to the issue occurring when persisted object's hashCode() implementation uses lazily-loaded properties.
This triggers "collection [...] was not processed by flush()" issue with default Hibernate Validator event listener (org.hibernate.cfg.beanvalidation.BeanValidationEventListener) and validator (org.hibernate.validator.engine.ValidatorImpl) implementations because of hashCode() usage in SingleThreadCachedTraversableResolver.buildHashCode().
The purpose of this task is to consider whether this is or is not an overlook in assumptions made in validator implementation. And depending on the result following outcomes are expected:
* either create a separate task for addressing the issue in default validator implementation;
* or provide suggestions and (if possible) examples on how the issue can be addressed at the framework user's site if lazily-loaded properties usage IS appropriate.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://opensource.atlassian.com/projects/hibernate/secure/Administrators....
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
12 years, 10 months