I have a ProductCategory entity with a reference to a parent ProductCategory. I
wish to eagerly fetch one parent but not the parent's parent. We always use
fetchplans (using entityManager.getFetchPlan().addFetchGroups(...)) and we
always detach according to the fetchplan, so I tried:
@FetchGroup(name = "ProductCategoryParentNoRecursion", attributes = {
@FetchAttribute(name = "parent", recursionDepth = 1) })
Question 1: according to the latest manual a recursionDepth of 1 is the
default, but I have also seen it mentioned in Jira or the newsgroup that it was
changed so that the recursion depth has no limit by default. Which one is it?
Question 2: no matter what recursionDepth I use (I tried -1, 0, 1 and 2), it
always fetches the parent's parent. I tested this with a ProductCategory
structure of A -> B -> C. When I use entityManager.find to find C by it's id, I
expect C.parent.parent to be null but it is not. Why is this?
(I did not access the parent before detaching).
Regards,
Henno Vermeulen
Huize Molenaar