olá,
Estou com problema em um auto-relacionamento.
Ao consultar não esta alimentado o auto-relacionamento.
Procurei na internet e achei uma possível solução porem ao aplicar continuou na mesma.
Fazendo consulta com hibernate os atributos parentFolder e folders ficam com o valor de null.
Segue a tabela:
CREATE TABLE folder
(
folder_id serial NOT NULL,
has_children boolean NOT NULL,
name character varying(250) NOT NULL,
observation character varying(250),
path character varying(8000) NOT NULL,
parrent integer,
CONSTRAINT folder_pkey PRIMARY KEY (folder_id ),
CONSTRAINT fk3b440d445f895185 FOREIGN KEY (parrent)
REFERENCES folder (folder_id) MATCH SIMPLE
ON UPDATE NO ACTION ON DELETE NO ACTION
)
Dados da tabela:
Código da Classe:
@Entity
@Table(name = "folder")
@Data
@NoArgsConstructor
@AllArgsConstructor
@XmlRootElement
public class Folder implements Serializable {
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "folder_id", unique = true, nullable = false)
private Integer folderId;
@Column(name = "has_children", nullable = false)
private Boolean hasChildren;
@Column(nullable = false, length = 250)
private String name;
@Column(length = 250)
private String observation;
@Index(name = "idx_folder_path")
@Column(nullable = false, length = 8000)
private String path;
@Index(name = "idx_folder_parrent")
@ManyToOne(fetch = FetchType.EAGER)
@JoinColumn(name = "parrent", insertable = true, updatable = true)
@Fetch(FetchMode.JOIN)
@Cascade(CascadeType.SAVE_UPDATE)
private Folder parentFolder;
@OneToMany(mappedBy = "folder", fetch = FetchType.LAZY)
@Cascade(CascadeType.ALL)
private List<Folder> folders;
}
Se alguem já passou por isso e puder ajudar. Aceito novas soluções para o problema ^^