[ https://issues.apache.org/jira/browse/CAY-1551?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15776452#comment-15776452 ]
Andrus Adamchik commented on CAY-1551: -------------------------------------- Still broken as of 12/2016 (both ordering and in-memory evaluation of expressions). E.g. you may add this to OrderingTest to reproduce: {noformat} @Test public void testOrderList_Related() throws Exception { List<B1> unordered = asList( new B1().setName("three").setB2(new B2().setName("Z")), new B1().setName("one").setB2(new B2().setName("A")), new B1().setName("two").setB2(new B2().setName("M")) ); List<B1> ordered = new Ordering("b2+.name", SortOrder.ASCENDING).orderedList(unordered); assertEquals("one", ordered.get(0).getName()); assertEquals("two", ordered.get(1).getName()); assertEquals("three", ordered.get(2).getName()); } {noformat} > orderings with "+." in the path fail when performing in memory sort > ------------------------------------------------------------------- > > Key: CAY-1551 > URL: https://issues.apache.org/jira/browse/CAY-1551 > Project: Cayenne > Issue Type: Bug > Components: Core Library > Affects Versions: 3.1M1 > Reporter: Marcin Skladaniec > > Example stack: > Exception in thread "AWT-EventQueue-0" > org.apache.cayenne.exp.ExpressionException: [v.3.0.1 Sep 06 2010 15:09:38] > Error evaluating expression 'invoiceLine+.invoice.invoiceNumber' > at > org.apache.cayenne.exp.parser.SimpleNode.evaluate(SimpleNode.java:339) > at org.apache.cayenne.query.Ordering.compare(Ordering.java:336) > at java.util.Arrays.mergeSort(Arrays.java:1270) > at java.util.Arrays.sort(Arrays.java:1210) > at java.util.Collections.sort(Collections.java:159) > at org.apache.cayenne.query.Ordering.orderList(Ordering.java:324) > .... > Caused by: java.beans.IntrospectionException: No property 'invoiceLine+' > found in class ish.oncourse.cayenne.Enrolment > at > org.apache.cayenne.reflect.PropertyUtils.getSimpleProperty(PropertyUtils.java:203) > at > org.apache.cayenne.reflect.PropertyUtils.getProperty(PropertyUtils.java:116) > at > org.apache.cayenne.exp.parser.ASTObjPath.evaluateNode(ASTObjPath.java:54) > at > org.apache.cayenne.exp.parser.SimpleNode.evaluate(SimpleNode.java:335) > ... 52 more -- This message was sent by Atlassian JIRA (v6.3.4#6332)