Cayenne is there to abstract the interface to the tools that the database provides, not to obfuscate the tools. Custom ordering is not an intrinsic attribute of a relationship in the database; it should not be an intrinsic attribute of a relationship in Java.
If you need to sort the results or a JOIN, override the getter. If you need to maintain custom ordering, model a linked list in your schema. This just isn't Cayenne's responsibility.
