Closed andrus closed 2 years ago
I have an idea of a fix - make Cayenne NestedDataResolvers internally change resolver strategy based on the structure of their parent path (e.g. for "parent exp" strategy go "parent exp -> parent ids -> parent getter", for "parent ids" go "parent ids -> parent getter".
A relationship that is a child of a custom relationship fails to resolve properly. The model looks like this:
The exception below is thrown by the following disabled test:
GET_EntityOverlay_PerRequestIT.test_OverlaidRelationship_ExpOnParent_Nested()
. This is the first case were a relationship resolver strategy should depend on the navigation path of the request and has to be determined dynamically at request time. "E3->E2" should use standard Cayenne strategy (ViaQueryWithParentExpResolver
) when navigated from E3, and some other strategy (e.g.ViaQueryWithParentIdsResolver
) when navigated from E4 to E3 to E2