Hai un riferimento circolare in toString metodo generato da Lombok.
Productfa riferimento aCategoriesutoString, che fa riferimento aProduct, e così via
È possibile utilizzare la proprietà di esclusione @ToString , ma presto sarà ritirato, quindi usa @ToString.Exclude :
@Document
@Data @AllArgsConstructor @NoArgsConstructor @ToString
public class Product {
...
@ToString.Exclude
private Categorie categorie;
...
}
@Document
@Data @AllArgsConstructor @NoArgsConstructor @ToString
public class Categorie {
...
@ToString.Exclude
private Collection<Product> products=new ArrayList<>();
...
}
Lombok fa riferimento qui e qui