J'essaye d'imposer une association @ Oneto7. J'aurais imaginé un attribut qui spécifie la valeur de beaucoup de cibles, mais n'en ai trouvé aucun. S'il n'y a pas un tel attribut, sinon comment, dans JPA/EclipseLink, l'atteindrait-il?Comment spécifier la cardinalité d'un @OneToMany dans EclipseLink/JPA
1
A
Répondre
1
Vous pouvez utiliser l'API de validation Bean (JSR-303) - Hibernate Validator étant le RI - et ajouter une contrainte Size
sur votre collection:
@Size(min = 7, max = 7) protected Set<Foo> foos = new HashSet<Foo>();
Si vous utilisez JPA 1.0, un coup d'oeil à ce previous answer pour voir comment utiliser Bean Validation avec JPA 1.0.
0
Vous pourriez utiliser la bibliothèque ovale et définir .: par exemple
@OneToMany(cascade = CascadeType.ALL, mappedBy = "whatevery")
@Size(max = 30)
private List<SuperDocument> documents;
est la documentation ici pour plus de Oval validations: http://oval.sourceforge.net/userguide.html#api-documentation
C'est une solution. Cependant, j'aimerais continuer à utiliser EclipseLink, n'importe quelle solution? – simpatico
@simpatico Huh? Il n'y a rien dans ma réponse qui suggère d'abandonner EclipseLink. Ma suggestion est d'utiliser ** l'API de validation Bean ** que vous utilisez à côté du fournisseur JPA. * Hibernate Validator * est une implémentation de cette API, ce n'est pas ** une alternative à EclipseLink, vous l'utilisez à côté d'EclipseLink. –
Dans l'exemple de code fourni dans votre lien, j'ai lu org.hibernate.ejb.HibernatePersistence , qui me tromper. –
simpatico