I have two model classes. One of them -
@Entity(name = "userTools") @Table(uniqueConstraints = @UniqueConstraint(columnNames = { "assignToUser_id","toolsType_id" })) @Inheritance(strategy = InheritanceType.JOINED) @JsonTypeInfo(use = JsonTypeInfo.Id.CLASS, include = JsonTypeInfo.As.PROPERTY, property = "className") @JsonIgnoreProperties(ignoreUnknown = true) public class UserTools { @Id @GeneratedValue(strategy = GenerationType.AUTO) private Long id; @OneToOne private ToolsType toolsType; @OneToMany(mappedBy = "userTools", fetch = FetchType.EAGER, cascade = { CascadeType.ALL }, orphanRemoval = true) @Cascade(org.hibernate.annotations.CascadeType.DELETE) @JsonManagedReference private List<UserToolsHistory> userToolsHistory; }
and the second -
@Entity(name = "userToolsHistory") @JsonIgnoreProperties(ignoreUnknown = true) public class UserToolsHistory { @Id @GeneratedValue(strategy = GenerationType.AUTO) private Long id; @OneToOne private ToolsType toolsType; @ManyToOne @JsonIgnore @JsonBackReference private UserTools userTools; private String comments; }
But when saving, I get this error:
Can not handle managed/back reference 'defaultReference': no back reference property found from type [collection type; class java.util.List, contains [simple type, class com.dw.model.tools.UserToolsHistory]]
source share