Здравствуйте, я столкнулся с этой ошибкой, и ни одно из найденных решений не сработало.У меня есть объект корзины:
@Data
@Entity
public class Cart {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;
private String status;
@ManyToOne(cascade = CascadeType.MERGE)
@JoinColumn(name = "usr_id", nullable = false)
private User usr;
@ElementCollection(targetClass=String.class)
private List<String> productsBarcode = new ArrayList<>();
private long nutritional_score;
}
и объект пользователя
@Entity
@Data
public class User {
@Id
@GeneratedValue
private Long id;
private String firstname;
private String lastname;
private String email;
private String phone;
@JsonIgnore
@OneToMany(mappedBy = "id",cascade=CascadeType.ALL)
private List<Cart> carts = new ArrayList<Cart>();
}
Когда я пытаюсь передать запрос POST со следующим JSON:
{
"status": "in-progress",
"usr": {
"id": 1,
"firstname": "jhon",
"lastname": "koer",
"email": "ero@fk.fr",
"phone": "078542163"
},
"productsBarcode": [
"3029330003533",
"3029330003533"
]
}
Но я получаю эту ошибку:
org.h2.jdbc.JdbcSQLException: Referential integrity constraint violation:
"FK8TNAV1OMIP1EBGI23DBBO8B8T: PUBLIC.CART FOREIGN KEY(USR_ID) REFERENCES PUBLIC.USER(ID) (100)"; SQL statement:
insert into cart (id, nutritional_score, status, usr_id) values (null, ?, ?, ?) [23506-197]
Как мне это исправить, пожалуйста?