table d'association et clef primaire
Bonjour,
J'ai 3 tables : products, categories, products_to_categories
et voici les entités correspondantes
Code:
1 2 3 4 5 6 7 8 9 10 11
| @Entity
public class Products implements Serializable {
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Basic(optional = false)
@Column(name = "products_id")
private Integer productsId;
@OneToMany(cascade=CascadeType.ALL)
@JoinColumn(name = "products_id", referencedColumnName="products_id")
private ProductsToCategories productsToCategories; |
Code:
1 2 3 4 5
| @Entity
public class ProductsToCategories implements Serializable {
private static final long serialVersionUID = 1L;
@EmbeddedId
protected ProductsToCategoriesPK productsToCategoriesPK; |
Code:
1 2 3 4 5 6 7 8
| @Embeddable
public class ProductsToCategoriesPK implements Serializable {
@Basic(optional = false)
@Column(name = "products_id")
private int productsId;
@Basic(optional = false)
@Column(name = "categories_id")
private int categoriesId; |
Code:
1 2 3 4 5 6 7
| public class Categories implements Serializable {
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Basic(optional = false)
@Column(name = "categories_id")
private Integer categoriesId; |
Un produit peut appartenir à plusieurs catégories.
J'aimerais récupérer les produits qui appartiennent à une catégorie. J'ai donc créé une jointure OneToMany dans l'entité Products. Mais j'ai cette erreur
Code:
Illegal attempt to map a non collection as a @OneToMany, @ManyToMany or @CollectionOfElements: entities.Products.productsToCategories
Est-ce dû à la clef primaire dans la table products_to_categories sur les champs products_id et categories_id ?
Merci.