diff --git a/src/main/java/com/avaje/ebeaninternal/server/query/SqlTreeBuilder.java b/src/main/java/com/avaje/ebeaninternal/server/query/SqlTreeBuilder.java index c0bcadae1..107a59871 100644 --- a/src/main/java/com/avaje/ebeaninternal/server/query/SqlTreeBuilder.java +++ b/src/main/java/com/avaje/ebeaninternal/server/query/SqlTreeBuilder.java @@ -97,7 +97,7 @@ public class SqlTreeBuilder { this.desc = request.getBeanDescriptor(); this.query = request.getQuery(); - this.subQuery = Type.SUBQUERY.equals(query.getType()); + this.subQuery = Type.SUBQUERY.equals(query.getType()) || Type.ID_LIST.equals(query.getType()); this.includeJoin = query.getIncludeTableJoin(); this.manyWhereJoins = query.getManyWhereJoins(); this.queryDetail = query.getDetail(); diff --git a/src/test/java/com/avaje/tests/query/other/TestFindIdsWithInheritance.java b/src/test/java/com/avaje/tests/query/other/TestFindIdsWithInheritance.java new file mode 100644 index 000000000..511456106 --- /dev/null +++ b/src/test/java/com/avaje/tests/query/other/TestFindIdsWithInheritance.java @@ -0,0 +1,31 @@ +package com.avaje.tests.query.other; + +import java.util.List; + +import org.junit.Assert; +import org.junit.Test; + +import com.avaje.ebean.BaseTestCase; +import com.avaje.ebean.Ebean; +import com.avaje.tests.model.basic.Truck; +import com.avaje.tests.model.basic.Vehicle; + +public class TestFindIdsWithInheritance extends BaseTestCase { + + @Test + public void testQuery() { + + Truck truck = new Truck(); + truck.setLicenseNumber("TK123"); + + Ebean.save(truck); + + List ids = Ebean.find(Vehicle.class).findIds(); + + Assert.assertNotNull(ids); + + Ebean.delete(truck); + + } + +}