]
Diego Pires Plentz updated ANN-472:
-----------------------------------
Component/s: binder
@UniqueConstraint declaration is not friendly towards inheritance or
reflection
-------------------------------------------------------------------------------
Key: ANN-472
URL:
http://opensource.atlassian.com/projects/hibernate/browse/ANN-472
Project: Hibernate Annotations
Issue Type: Improvement
Components: binder
Affects Versions: 3.2.0.ga
Environment: Hibernate 3.2 GA
Reporter: Ted Bergeron
The current way to define a composite unique constraint is limiting.
@Table(name="tbl_sky",
uniqueConstraints = {@UniqueConstraint(columnNames={"month",
"day"})}
)
Suppose I have an abstract base class called A that gives me Id and Name, subclassed by
abstract class B that gives me Customer. Then I have many concrete classes that subclass
B. For all of these, I'd want the combination of Name and Customer to be unique. As
I do not use @Table with abstract base classes, I currently have to repeat:
uniqueConstraints = {@UniqueConstraint(columnNames={"name",
"customer_id"})} on all concrete classes.
If we had an alternate way to define these constraints at the property level (as XDoclet
did with hibernate 2), I could define this in the base classes and inherit the constraint
declaration.
The other need is that I would like to use reflection to scan the properties and apply
proper validations in the view layer. With @Column(unique = true) this is easy to do.
The view layer makes an AJAX call and all is well. For a composite constraint, it does
not work well currently.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: