From a30948d38d6220f234d66c30dd03e2e3671617f0 Mon Sep 17 00:00:00 2001 From: Robin Bygrave Date: Wed, 28 Oct 2015 08:15:15 +1300 Subject: [PATCH] #438 - findPagedList and getTotalRowCount, the query.getAlias() is null --- .../server/querydefn/DefaultOrmQuery.java | 1 + .../tests/query/TestQueryFindPagedList.java | 23 +++++++++++++++++++ 2 files changed, 24 insertions(+) diff --git a/src/main/java/com/avaje/ebeaninternal/server/querydefn/DefaultOrmQuery.java b/src/main/java/com/avaje/ebeaninternal/server/querydefn/DefaultOrmQuery.java index 2170a6def..e509c2205 100644 --- a/src/main/java/com/avaje/ebeaninternal/server/querydefn/DefaultOrmQuery.java +++ b/src/main/java/com/avaje/ebeaninternal/server/querydefn/DefaultOrmQuery.java @@ -484,6 +484,7 @@ public class DefaultOrmQuery implements SpiQuery { copy.profilingListener = profilingListener; copy.query = query; + copy.rootTableAlias = rootTableAlias; copy.additionalWhere = additionalWhere; copy.additionalHaving = additionalHaving; copy.distinct = distinct; diff --git a/src/test/java/com/avaje/tests/query/TestQueryFindPagedList.java b/src/test/java/com/avaje/tests/query/TestQueryFindPagedList.java index aeb229a46..7c972fc26 100644 --- a/src/test/java/com/avaje/tests/query/TestQueryFindPagedList.java +++ b/src/test/java/com/avaje/tests/query/TestQueryFindPagedList.java @@ -110,4 +110,27 @@ public class TestQueryFindPagedList extends BaseTestCase { Ebean.endTransaction(); } } + + + @Test + public void test_usingAlias() throws ExecutionException, InterruptedException { + + ResetBasicData.reset(); + + PagedList pagedList = Ebean.find(Order.class) + .alias("b") + .where().raw("b.id > 0") + .findPagedList(0, 6); + + LoggedSqlCollector.start(); + + pagedList.getTotalRowCount(); + pagedList.getList(); + + List loggedSql = LoggedSqlCollector.stop(); + + assertEquals(2, loggedSql.size()); + assertThat(loggedSql.get(0)).contains("select count(*) from o_order b where b.id > 0"); + assertThat(loggedSql.get(1)).contains("select b.id c0, b.status c1, b.order_date c2"); + } }