Getting error: The expression is not a valid conditional expression

Getting error: The expression is not a valid conditional expression

Query eWFqery = em.createQuery("SELECT eworkfirm FROM EsafWorkFirms eworkfirm WHERE eworkfirm.feiNum = :feiNumber AND eworkfirm.getEsafWork().getWorkId() IN :workIdList");
        eWFqery.setParameter("feiNumber", firmObj.getFeiNum());
        eWFqery.setParameter("workIdList", workIdList);

请帮助我收到以下错误。

错误:

java.lang.IllegalArgumentException: An exception occurred while creating a query in EntityManager: 
Exception Description: Syntax error parsing [SELECT eworkfirm FROM 
EsafWorkFirms eworkfirm WHERE eworkfirm.feiNum = :feiNumber AND 
eworkfirm.getEsafWork().getWorkId() IN :workIdList]. 
[52, 136] The expression is not a valid conditional expression.

我猜 中的语法有问题:getEsafWork().getWorkId() ...

请改为尝试(如果列表包含 ID):

eworkfirm.esafWork.workId in ...

...如果列表包含 "works",则只需:

eworkfirm.esafWork in ...