I am using the join query on a pair of tables. The query runs fine via plain sql, but the result list doesn't seem to take the restriction parameter even if set. For example TableA contains a OneToOne relationship to TableB and my ejbQL looks like this " TableAList.java contains the following code EJBQL = "select a from TableA a join a.TableB b"; private static final String[] RESTRICTIONS = { "a.type = #{tableAList.a.type}", "b.status = #{tableAList.status}" Even if we set the tableAList.status the SQL never generates the where clause for b.status. What am I missing here?