Компиляция: Ошибка создания бина с именем entityManagerFactory - PullRequest
0 голосов
/ 14 февраля 2019

У меня ошибка при компиляции.В тесте у меня нет проблем.

У меня есть зависимость javax.xml.bind, jaxb-api.

Ошибка:

Причина: org.springframework.beans.factory.BeanCreationException: Ошибка при создании компонента с именем entityManagerFactory, определенным в ресурсе пути к классу [org / springframework / boot / autoconfigure / orm / jpa / HibernateJpaConfiguration.class]: сбой вызова метода init;вложенное исключение: org.hibernate.AnnotationException: mappedBy ссылается на неизвестное свойство целевого объекта: com.endoorment.models.entity.AccessoryLang.accessory в com.endoorment.models.entity.Accessory.accessorylang

Entities:

@Entity 
@Table(name = "accessories")
public class Accessory implements Serializable {

private static final long serialVersionUID = 1L;

@Id
private Integer id;

@OneToMany(mappedBy = "accessory", cascade = CascadeType.ALL)
private Set<AccessoryLang> accessorylang = new HashSet<AccessoryLang>();

@Entity 
@Table(name = "accessories_langs")
public class AccessoryLang implements Serializable {

private static final long serialVersionUID = 1L;

@EmbeddedId
private AccessoryLangId accessorylangid;

@ManyToOne(fetch = FetchType.LAZY)
@MapsId("accessoryId")
@JoinColumn(name = "accessories_id", nullable = false)
@OnDelete(action = OnDeleteAction.CASCADE)
@JsonIgnore
private Accessory accessory;

@ManyToOne(fetch = FetchType.LAZY)
@MapsId("langId")
@JoinColumn(name = "langs_id", nullable = false)
@OnDelete(action = OnDeleteAction.CASCADE)
@JsonIgnore
private Lang lang;

@Column(nullable = false, length = 45)
@NotEmpty   
private String name;

1 Ответ

0 голосов
/ 14 февраля 2019

Проблема в том, что у вас есть отношение многие ко многим, которое в вашем случае было отображено как отношение один ко многим и один ко многим.

У вас есть отношение многие ко многим между Аксессуаром и Лэнгом.JPA позволяет лучше сопоставить его напрямую.

Пожалуйста, проверьте эту статью или выполните поиск по запросу "JPA сопоставление многих со многими" https://vladmihalcea.com/the-best-way-to-use-the-manytomany-annotation-with-jpa-and-hibernate/

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...