Hello, I am try to run some BBD tests integrated with Cayenne (succesfully, so far). I am at the point where I can not fully specify the record/object to select in the test script, and so I am trying to select the latest object inserted, matching some lose criteria.
Unfortunately, I don't have a generic "insertion date" in all my entities; so the next best think I could think of, is to use the value of the PK (generated using Postgres sequences) to sort the selected objects (DESC) and picking the first match. To achieve this, I have tried with this code: String dbEntityName = context.getEntityResolver().getObjEntity(entityName).getDbEntityName(); ImmutableList<Ordering> orderBy = context.getEntityResolver().getDbEntity(dbEntityName).getPrimaryKeys().stream() .map(attribute -> new Ordering(attribute.getName(), SortOrder.DESCENDING)) .collect(ImmutableList.toImmutableList()) ; BaseDataObject latestInstance = ObjectSelect.query(clazz).orderBy(orderBy).selectFirst(context); but I get the following error: - Can't resolve path component: [{EntityName}.{primaryKeyFieldName}] I realize that {EntityName} and {primaryKeyFieldName} live in two separate contexts (Entities vs DB); but I have no more ideas on how to progress. Does anyone have any suggestions on how to do this stunt? Cheers, Giulio Cesare